android:以编程方式更改选项菜单项

新手上路,请多包涵

是否可以通过编程方式更改选项菜单项?谁能给我举个例子吗?

另外,我想禁用某些项目,这样他们就不会听到点击,这可能吗?

原文由 Farhan 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 378
1 个回答

对于任何需要动态更改菜单选项的人:

 private Menu menu;

// ...

@Override
public boolean onCreateOptionsMenu(Menu menu)
{
    this.menu = menu;
    getMenuInflater().inflate(R.menu.options, menu);
    return true;
}

// ...

private void hideOption(int id)
{
    MenuItem item = menu.findItem(id);
    item.setVisible(false);
}

private void showOption(int id)
{
    MenuItem item = menu.findItem(id);
    item.setVisible(true);
}

private void setOptionTitle(int id, String title)
{
    MenuItem item = menu.findItem(id);
    item.setTitle(title);
}

private void setOptionIcon(int id, int iconRes)
{
    MenuItem item = menu.findItem(id);
    item.setIcon(iconRes);
}

原文由 Eng.Fouad 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题