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

新手上路,请多包涵

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

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

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

阅读 448
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 许可协议

推荐问题