码迷,mamicode.com
首页 > 其他好文 > 详细

SherlockactionBar中手动调用onCreateOptionsMenu的办法

时间:2015-08-07 19:09:31      阅读:137      评论:0      收藏:0      [点我收藏+]

标签:

    我们有时候要做做事的时候,要提前拿到 ActionBar中的menuItem,但是,会出现为空的情况。怎么办呢?

比如这里:

 1     @Override
 2     public boolean onCreateOptionsMenu(Menu menu) {
 3         getSupportMenuInflater().inflate(R.menu.menu_common, menu);
 4         mapItem = menu.findItem(R.id.menuItem);
 5         mapItem.setTitle(ResourceReader.readString(GroupTasksActivity.this, R.string.menu_map));
 6         mapItem.setIcon(ResourceReader.readDrawable(this, R.drawable.ic_menu_map));
 7         mapItem.setOnMenuItemClickListener(item -> {
 8             taskGroupPresent.setupMenuMap(item);
 9             return true;
10         });
11         mapItem.setVisible(false);
12         return true;
13     }

但我们创建Activity后,在Oncreate或者OnResume代码中,要用到mapItem,mapItem不一定要生成完毕,

有可能为空。我们要手动调用 onCreateOptionsMenu怎么办呢?

呵呵,可以直接用 openOptionsMenu方法就可以了。没错,就是这个方法:

完整方法在这里:

 

      setContentView(R.layout.activity_nearby_task);
        openOptionsMenu();
        initAllDatas();
        setListener();

总结:手动 调用 onCreateOptionsMenu,就用 openOptionsMenu

 


 


 

SherlockactionBar中手动调用onCreateOptionsMenu的办法

标签:

原文地址:http://www.cnblogs.com/lixiaodaoaaa/p/4711219.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!