我似乎无法使用 ABS 或标准 ActionBar 来设置操作按钮的主题。尽管使用 selectableItemBackground
在我的主题中,它仍然使用蓝色突出显示而不是请求的红色突出显示。但是,它似乎适用于 SearchView 中的丢弃按钮(参见附图)。
我确定我错过了一些简单的东西,有人知道吗?!
按下操作按钮使用此高亮显示:
他们什么时候应该使用这个:
这是我使用的样式:
<style name="Theme.Styled" parent="Theme.Sherlock.Light.DarkActionBar">
<item name="actionBarStyle">@style/Widget.Styled.ActionBar</item>
<item name="android:actionBarStyle">@style/Widget.Styled.ActionBar</item>
<item name="actionBarTabStyle">@style/MyActionBarTabStyle</item>
<item name="android:actionBarTabStyle">@style/MyActionBarTabStyle</item>
<item name="android:fastScrollThumbDrawable">@drawable/fastscroll</item>
<item name="android:editTextStyle">@style/Widget.Styled.EditText</item>
<item name="android:selectableItemBackground">@drawable/selectable_background</item>
</style>
更新
使用 <item name="android:actionBarItemBackground">@drawable/selectable_background</item>
似乎有效,但这不是 Nick Butcher 的 article关于主题用途。这是否可以接受/它会破坏任何东西吗?
最佳答案
那篇文章是为 Android 3.0 编写的,Android 4.0 的属性发生了变化,这就是您看到行为差异的原因。
使用 actionBarItemBackground
现在是更改操作项背景的正确方法。
如果您使用的是 ActionBarSherlock,请记住您需要主题中的 android
前缀和非前缀版本才能在所有 API 级别上工作。
关于android - 使用 ActionBarSherlock 的主题不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10963970/