gpt4 book ai didi

Android 和 ActionBarCompat : how to change visibility of actions at runtime on pre-ICS devices?

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:41:37 24 4
gpt4 key购买 nike

我有一个 Activity extends ActionBarActivity 取自 ActionBarCompat 代码示例,我正在尝试显示/隐藏菜单项(操作) 在运行时。

我试过在 MenuItem 上使用 setVisible() 并适用于 ICS,但在 pre-ICS 中它只会改变菜单项的可见性(按下菜单按钮)而 ActionBar 不会收到菜单更改的通知。

有什么解决办法吗?提前致谢!

最佳答案

我在/res/menu/下创建了多个操作栏选项。我保留了一个成员来表明我现在正在使用哪个。要替换菜单,我调用:

protected void setMenuResource(int newMenuResourceId)
{
_menuResource = newMenuResourceId;
invalidateOptionsMenu();
}

然后我将 onCreateOptionsMenu() 重写为:

@Override
public boolean onCreateOptionsMenu(Menu menu)
{
if (_menuResource != 0)
{
getSupportMenuInflater().inflate(_menuResource, menu);
return true;
}
return super.onCreateOptionsMenu(menu);
}

现在,如果我想更改操作项,我调用:

setMenuResource(R.menu.actionbar_menu_X);

关于Android 和 ActionBarCompat : how to change visibility of actions at runtime on pre-ICS devices?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9712186/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com