首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在创建菜单后调用OnPrepareOptionsMenu

在创建菜单后调用OnPrepareOptionsMenu
EN

Stack Overflow用户
提问于 2017-12-02 12:25:41
回答 2查看 629关注 0票数 0

我试图理解一个现象.I有一个名为"new"的Integer 字段,其中在onPrepareOptionsMenu中添加了一个条件,并在其基础上更改了菜单项标题如下:-

代码语言:javascript
复制
   public boolean onPrepareOptionsMenu(Menu menu) {

        if(new==1) {
            menu.findItem(R.id.folder).setTitle("new folder");
        }else
            menu.findItem(R.id.doc).setTitle("new document");

        return super.onPrepareOptionsMenu(menu);
}

当的值发生变化时,“新”会在我的Activites方法中被调用,而当它的值发生变化时,会被调用,并且会发生更改。

我所知道的是,应该在onCreateOptionsMenu之前调用它,它在活动开始时只调用过一次(我不记得活动了)。,onPrepareOptionsMenu怎么会被召回??

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-12-02 12:34:37

活动启动时只调用一次onCreateOptionsMenu(),每次打开菜单以在显示时更新菜单时都调用onPrepareOptionsMenu(Menu menu)

票数 1
EN

Stack Overflow用户

发布于 2017-12-02 12:35:34

如果您想刷新optionsMenu,只需打电话

代码语言:javascript
复制
invalidateOptionsMenu()

届时onPrepareOptionsMenu()将被召回

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47607877

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档