如何重命名现有菜单项?

6

您知道如何重命名现有菜单吗?

当按下菜单项时,我可以重命名。但是我不知道在按下按钮时如何访问菜单项。

请给予建议。


你的问题有点不清楚。你似乎混淆了“菜单”、“菜单项”和可能的“按钮”这些术语。你能澄清一下吗? - Christopher Orr
3个回答

27

如果您能稍微澄清一下问题,那将会很好。但每次用户在您的某个活动中按下其Android设备上的Menu键时,都会调用onPrepareOptionsMenu方法。当菜单首次显示(即仅一次)时,将调用onCreateOptionsMenu方法。

基本上,onPrepareOptionsMenu方法是您应该进行任何更改的地方,例如启用/禁用某些菜单项或根据情况更改菜单项文本。

例如:

@Override
public boolean onPrepareOptionsMenu(Menu menu) {

    // Check current message count
    boolean haveMessages = mMessageCount != 0;

    // Set 'delete' menu item state depending on count
    MenuItem deleteItem = menu.findItem(R.id.menu_delete);
    deleteItem.setTitle(haveMessages ? R.string.delete : R.string.no_messages);
    deleteItem.setEnabled(haveMessages);

    return super.onPrepareOptionsMenu(menu);
}

2
谢谢您的回复。我已经找到了解决方案:public boolean onMenuOpened(int featureId, Menu menu) 对我的情况来说很好。 - AndroiDBeginner

0

0

onPrepareOptionsMenu是修改菜单项的正确位置。


从文档上看似乎是这样。你有什么想法onMenuOpened方法可以用来做什么?我也可以在其中更改我的菜单。 - barry

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接