listview显示列表之后,使用setOnCreateContextMenuListener实现长按弹出选项菜单:
listview.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {
@Override
public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) {
menu.setHeaderTitle("删除生词本?");
menu.add(0, 0, 0, "删除");
menu.add(0,1,0,"增加");
}
});
使用 onContextItemSelected实现菜单选项,接下里问题来了,我要在菜单选项之中获取当前长按的listview的位置,
就用这个东西:
@Override
public boolean onContextItemSelected(MenuItem item) {
switch (item.getItemId()){
case 0 :
**AdapterView.AdapterContextMenuInfo menuInfo=
(AdapterView.AdapterContextMenuInfo) item.
getMenuInfo();**
//position就是获取到的当前listview的位置
int position=menuInfo.position;
//要实现的逻辑
......
break;
case 1 :
break;
.
.
.
default :
break;
}