【发布时间】:2012-06-07 06:25:38
【问题描述】:
我有一个 ListView。我实现了 OnItemClickListener 以在单击项目时打开 ContextMenu。
lv = getListView();
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
showMenu(view);
}
});
以及创建菜单的代码。
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.layout.friend_list_menu, menu);
}
public void showMenu(View v) {
registerForContextMenu(v);
openContextMenu(v);
}
我的问题是,当我单击 ListView 的一项时,它确实打开了菜单。但是,如果我返回 ListView,我将无法再次单击该项目。其他项目同理,关闭菜单后无法点击。谁能帮我解决这个问题?
【问题讨论】:
-
这里的
openContextMenu(v);是什么? -
@SpK: 点击项目时打开菜单。
-
我认为 registerForContextMenu(listView);
-
欢迎来到 SO。如果以下答案之一解决了您的问题,您应该接受它(单击相应答案旁边的复选标记)。这有两件事。它让每个人都知道您的问题已得到解决,并让帮助您的人获得帮助。