您的位置:首页 > 移动开发 > Android开发

Android动态设置actionBar

2015-08-19 19:36 447 查看
在父类中添加如下代码

public boolean isOpen = flase;//默认为false

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {

		getMenuInflater().inflate(R.menu.news_ds_menu, menu);
		return true;//显示出来
	}

	public void isRightBtnHide() {
		isOpen = true;
	}

	@Override
	public boolean onPrepareOptionsMenu(Menu menu) {//在这里将菜单隐藏

		menu.findItem(R.id.news_share_item).setVisible(isOpen);	
		return super.onPrepareOptionsMenu(menu);
	}


在其他activity中调用时,添加如下代码

isRightBtnOpen();//将其状态设置为true
invalidateOptionsMenu();//重新调用<pre name="code" class="java">onCreateOptionsMenu、<span style="font-family: Arial, Helvetica, sans-serif;">onPrepareOptionsMenu将其显示出来</span>



这样就ok了,

1、原生

mActivity.getWindow().invalidatePanelMenu(Window.FEATURE_OPTIONS_PANEL);
2、ActionBarSherlock

invalidateOptionsMenu();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: