我有一个 ListView,它在长按其中一个元素时创建一个 ContextMenu。如何找到在创建此上下文菜单的 ListView 中选择的元素(不是选定的 MenuItem)?这是我的代码:
list.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {
@Override
public void onCreateContextMenu(ContextMenu menu, final View v,
ContextMenuInfo menuInfo) {
menu.setHeaderTitle("Actions");
android.view.MenuItem remove = menu.add("Remove");
final int selectedItem = ((ListView)v).getSelectedItemPosition();
remove.setOnMenuItemClickListener(new OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(android.view.MenuItem item) {
doSomething(listAdapter.getItem(selectedItem)); // NPE here
return true;
}
});
}
});
请注意,我不想要从上下文菜单中选择的项目,而是触发此上下文菜单的 ListView 项目。