我需要更改 ActionBar 中 menuItem 的颜色(当用户在我的操作栏中按下 menuItem 时出现的列表)。
android:style/Widget.Holo.Light.ActionBar
我必须改变哪个元素?
style
我必须创建哪个来更改android:style/Widget.Holo.Light.ActionBar
?
我需要更改 ActionBar 中 menuItem 的颜色(当用户在我的操作栏中按下 menuItem 时出现的列表)。
android:style/Widget.Holo.Light.ActionBar
我必须改变哪个元素?
style
我必须创建哪个来更改android:style/Widget.Holo.Light.ActionBar
?
我不确定您是否可以为特定的 menuItem 执行此操作,但您可以查看更完整的博客文章,了解关于设置 ActionBar 样式:第 1部分和第 2 部分
编辑:再次查看文章后,我认为您想要做的事情是不可能的。最好的办法是创建一个具有适当颜色的菜单项的图标,并在需要时更改它。
菜单.xml:
<item android:id="@+id/my_menu_item"
android:icon="@drawable/my_menu_item_icon_color1"
android:title="@string/my_menu_item"
android:showAsAction="ifRoom" />
在您的活动中:
/**
* Create default menu and keep it in a private var
*/
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.main_menu, menu);
mMenuActionBar = menu;
return true;
}
/**
* Method changing your item to second icon
*/
private void updateActionBar() {
if (mMenuActionBar != null) {
MenuItem menuItem = mMenuActionBar.findItem(R.id.my_menu_item);
if (menuItem != null) {
menuItem.setIcon(@drawable/my_menu_item_icon_color2);
invalidateOptionsMenu();
}
}
}