我見過this的問題,但它並沒有幫助我。
問題是:我解析一個網站,一些職位是個人的,另一個是組職位。如果是羣組帖子,我想在上下文菜單中顯示2個菜單項 - 「顯示作者的博客」和「顯示組的頁面」,如果它只是個人帖子,則只顯示「顯示作者的博客」菜單項。更改菜單項動態
````
@Override
public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) {
super.onCreateContextMenu(menu, v, menuInfo);
menu.add(0, 1, 0, "Open author's blog");
menu.add(0, 2, 0, "Open group's page");
}
@Override
public boolean onContextItemSelected(MenuItem item) {
AdapterContextMenuInfo menuInfo = (AdapterContextMenuInfo)item.getMenuInfo();
switch(item.getItemId()) {
case 1:
<< some code >>
break;
}
return true;
}
````
我不明白,我怎麼能得到OnCreateContextMenu方法本(菜單項項)。我希望這樣我可以設置一些菜單項可見或不可見。
我的上下文菜單是由listview創建的,一些元素可能是組帖子,有些是私人的。那麼,根據posttype,每次都會重新創建上下文菜單? – Groosha
是的,您每次對listView的元素執行長按時,都會重新創建contextMenu。所以,你需要找到listView的哪一行被選中,找到這一行是否與一個組或一個私人帖子相關聯,然後在contextMenu中只添加你需要的項目。 – flolom
太棒了!非常感謝! – Groosha