2013-03-26 24 views
2

您可以使用android:actionBarItemBackground属性更改操作栏上菜单项的背景。android:actionBarItemBackground对于ActionMode不同

但是,这会导致ActionMode中菜单项的背景具有相同的颜色。有没有办法让正常的ActionBar和ActionMode的菜单项有不同的背景?

<item name="android:actionBarItemBackground">@drawable/selectable_background_mytheme</item> 

selectable_background_mytheme

<selector xmlns:android="http://schemas.android.com/apk/res/android" 
     android:exitFadeDuration="@android:integer/config_mediumAnimTime" > 
    <item android:state_pressed="false" android:state_focused="true" android:drawable="@color/red" /> 
    <item android:state_pressed="true" android:drawable="@color/blue" /> 
    <item android:drawable="@android:color/transparent" /> 
</selector> 
+0

您是否找到解决方案? – Blackbelt 2013-04-11 09:33:00

+0

不幸的是,没有。 – nhaarman 2013-04-11 09:33:56

回答

0

你应该使用android:actionLayout,在这里看到:Android action bar menu item with actionLayout not working properly

其他一些注意事项:

您的文件"selectable_background_mytheme"应该是这个样子:

<?xml version="1.0" encoding="utf-8"?> 
<inset xmlns:android="http://schemas.android.com/apk/res/android" 
    android:insetBottom="0dp" 
    android:insetLeft="-5dp" 
    android:insetRight="-5dp" 
    android:insetTop="-5dp" > 

    <shape> 
     <solid android:color="@color/stacked_green" /> 

     <stroke 
      android:width="3dp" 
      android:color="@color/accent_green" /> 
    </shape> 
</inset> 

即不是选择器

或者,您可以使用位图绘制。