削除のコンテキストアクションを使用して、複数選択リストビューでチェックされたアイテムを削除する方法-
ArrayList<String> liveNames = new ArrayList<String>() {
{
add("dani");
add("john");
add("dave");
add("alen");
add("deno");
add("feliks");
add("jupi");
}
};
adapter = new ArrayAdapter(this、android.R.layout.simple_list_item_multiple_choice、liveNames);
setListAdapter(adapter);
.....。
@Override
public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
lv = getListView();
// Respond to clicks on the actions in the CAB
switch (item.getItemId()) {
case R.id.item1:
if(lv.getCheckedItemCount() > 0){
removeItems = lv.getCheckedItemIds();
deleteSelectedItems(removeItems);
}
mode.finish(); // Action picked, so close the CAB
return true;
default:
return false;
}
}
ここで、deleteSelectedItems(long [] delItms)メソッドに実装して、ListViewから選択したアイテムIDを「names」ArrayList内で削除するにはどうすればよいですか。ヒントをお願いします
アダプターリストを次のように更新できることを知っています
adapter.notifyDataSetChanged();
しかし、リストビュー内のアイテムの位置をIDとともに取得して、
name.remove(position) - but I have only the IDs.
ありがとう