上下文菜单项基于列表视图项隐藏

时间:2016-09-29 20:01:22

标签: android contextmenu


我一直在开发一个应用程序,它将一些itens存储在列表视图中。其中一些有一个类型(正常和基于流量的事件)。当列表视图中存储的元素类型等于基于流量的事件时,我需要设置上下文菜单(查看流量)的项目。

我尝试将条件(Menuitem.setVisible(true))放入onCreateContextMenu和onContextItemSelected方法中,但它们都没有工作。另外我在堆栈溢出处阅读了一些帖子,但没有帮助。

Set visibility in Menu programmatically android

How enable/disable item in contextmenu

有人知道是否有办法做到这一点?

编辑: 我试图使用第二篇文章中引用的一种方法,并设置菜单项可见。我仍然需要获取在列表视图中深度单击的项目的位置以获取其类型。

@Override
public void onPrepareOptionsMenu(Menu menu) {
    super.onPrepareOptionsMenu(menu);
    menu.getItem(2).setEnabled(true);
}

1 个答案:

答案 0 :(得分:0)

您可以使用其ID来获取项目,而不是使用getItem(int)。例如:

menu.findItem(R.id.action_settings)