点击Button,做如上切换。代码如下:

public class MainActivity extends ActionBarActivity {ActionBar actionBar;boolean b = true;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);actionBar = getSupportActionBar();actionBar.setHomeButtonEnabled(true);actionBar.setDisplayHomeAsUpEnabled(true);findViewById(R.id.button1).setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View arg0) {// TODO Auto-generated method stubif (b) {setTitle("编辑报表");} else {setTitle("报表详情");}b = !b;//通知系统更新菜单supportInvalidateOptionsMenu();}});}@Overridepublic boolean onPrepareOptionsMenu(Menu menu) {System.out.println("onPrepareOptionsMenu");menu.clear();if (b) {getMenuInflater().inflate(R.menu.main, menu);} else {getMenuInflater().inflate(R.menu.main2, menu);}return super.onPrepareOptionsMenu(menu);}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {System.out.println("onCreateOptionsMenu");getMenuInflater().inflate(R.menu.main, menu);return super.onCreateOptionsMenu(menu);}@Overridepublic boolean onOptionsItemSelected(MenuItem item) {// TODO Auto-generated method stubswitch (item.getItemId()) {case R.id.action_settings:break;default:break;}return super.onOptionsItemSelected(item);}}


在Button 中调用supportInvalidateOptionsMenu()方法,通知系统刷新菜单,系统会回调onPrepareOptionsMenu 方法,在这里面根据自己的逻辑,进行菜单的处理。

Activity自有 invalidateOptionsMenu 方法,但是它又api的要求,

Call requires API level 11 (current min is 8): android.app.Activity#invalidateOptionsMenu


对于这个效果,我前面是把menu对象给引用为外部变量来操作实现的,今天偶然发现这个方法。

在此,只能感慨 android support包的强大,很多效果都能实现,只是自己的api掌握不够全面。



更多相关文章

  1. android TextView setEms 方法名字
  2. 为什么 Dialog 不能用 Application 的 Context
  3. Android(安卓)常用画图方法练习
  4. android具有折叠效果的控件
  5. Android按下back键非退出隐藏到后台
  6. Android二级联动菜单的实现
  7. Android级联菜单的实现方法
  8. 浅谈Java中Collections.sort对List排序的两种方法
  9. Python list sort方法的具体使用

随机推荐

  1. 当expandlistview的getGroupView或者getC
  2. Android实现垂直型的SeekBar
  3. Android常用基本界面元素汇总
  4. Android的WebView简单使用实例(附Demo)
  5. Android的数字选择器NumberPicker-androi
  6. 深入Android【一】—— 序及开篇
  7. 你想加入IT高薪就业的队伍吗?还在犹豫什么
  8. Android 屏幕元素层次结构
  9. MDCC印象之三:Android热的背后
  10. Frida官方手册 - 在Android上使用Frida