我有一个listview,我保存了一个弹出菜单。所以我可以在长按listview项目时获得弹出菜单。我的弹出菜单方法如下:
void delete()
{
listView.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
@Override
public boolean onItemLongClick(AdapterView<?> adapterView, View view, int i, long l) {
Toast.makeText(ViewDetails.this, i+"", Toast.LENGTH_SHORT).show();
return true;
}
});
}
@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo)
{
super.onCreateContextMenu(menu,v,menuInfo);
menu.setHeaderTitle("Click to delete");
menu.add(0,v.getId(),0,"Delete");
}
@Override
public boolean onContextItemSelected(MenuItem item)
{
if(item.getTitle()=="Delete")
{
delete();
}
return true;
}
我的问题是我无法在onItemLongClick方法中执行代码。实际上我想要做的是按下弹出菜单中的删除选项删除列表项...有人请帮助我...提前致谢
答案 0 :(得分:0)
我觉得以下链接应该可以解决您的问题
how to implement a long click listener on a listview
还有一件事,你是否正在调用#delete()方法来注册listview长按监听器?