J'ai une chaîne de tableau que je l'ai utilisé dans mon Fragment
, et je montre les éléments de chaîne de tableau avec setListAdapter
dans ma liste:comment supprimer les éléments de liste sélectionnés?
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
String[] array = getResources().getStringArray(R.array.examlearray);
final ArrayList<String> str = new ArrayList<String>(Arrays.asList(array));
final ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(getActivity(),android.R.layout.simple_list_item_1, str);
setListAdapter(arrayAdapter);
final ListView listView = getListView();
listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL);
listView.setMultiChoiceModeListener(new MultiChoiceModeListener() {...
et sous mon onActionItemClicked
je veux mettre en œuvre mon deleteSelectedItem() méthode, que supprimer des éléments de ma liste sélectionnée, et ceci est mon code, mais il n'a pas supprimé l'élément sélectionné, il est juste retiré du premier de la liste, et où jamais il veut !!! que dois-je faire?, Toute aide serait être apprécié! Merci!
@Override
public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
// Respond to clicks on the actions in the CAB
switch (item.getItemId()) {
case R.id.delete:
// deleteSelectedItems();
Log.i(TAG, "deleteSelectedEntries");
SparseBooleanArray checkedItems = listView.getCheckedItemPositions();
for(int i=0;i<checkedItems.size();++i){
if(checkedItems.valueAt(i)){
str.remove(listView.getItemAtPosition(i));
}
}
arrayAdapter.notifyDataSetChanged();
mode.finish();
return true;
}
avez-vous sélectionné correctement obtenir un objet? avez-vous vérifié les valeurs 'onActionItemClicked' et' checkedItems'? –
Il semble que votre logique est erronée! –
@PareshMayani pourquoi et où? –