如何在菜单项按钮按下时更改颜色。我使用SherlockActionBar,但是当它被按下时,它会更改为一种对我的设计不太好的颜色。我需要更改这个颜色。
更新:
问题在于当我设置放置在背景上的可绘制对象时,当按钮被按下时,我的可绘制对象附近的背景颜色会发生变化。我可以更改可绘制对象,但是背景仍然会更改其颜色为丑陋的颜色。
如何在菜单项按钮按下时更改颜色。我使用SherlockActionBar,但是当它被按下时,它会更改为一种对我的设计不太好的颜色。我需要更改这个颜色。
更新:
问题在于当我设置放置在背景上的可绘制对象时,当按钮被按下时,我的可绘制对象附近的背景颜色会发生变化。我可以更改可绘制对象,但是背景仍然会更改其颜色为丑陋的颜色。
actionBarItemBackground
属性来更改背景。这应该是一个状态列表可绘制对象,反映了按下和聚焦等状态。当您单击菜单项时,这是如何将图标更改为新图标的方法。 好的,首先在onCreateOptionsMenu()中创建一个成员变量并获取对菜单项的引用。
然后,当您单击该项时,将该项设置为新的可绘制对象(使用您选择的颜色)。
MenuItem mMenuItem;
.....
menu.add("Map").setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_WITH_TEXT);
mMenuItem = menu.getItem(0);
......
mMenuItem.setIcon(android.R.drawable.ic_menu_set_as);
android:actionBarItemBackground
和actionBarItemBackground
?根据ABS文档,两者都是必需的。 - Jake Wharton