ActionBarSherlock主题不起作用

Ale*_*ran 1 android actionbarsherlock android-actionbar

我似乎无法使用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>
Run Code Online (Sandbox Code Playgroud)

UPDATE

使用<item name="android:actionBarItemBackground">@drawable/selectable_background</item>似乎有用,但这不是Nick Butcher 关于主题的文章所使用的.这是否可以/它会破坏什么?

Jak*_*ton 6

那篇文章是为Android 3.0编写的,而Android 4.0的属性已经改变,这就是为什么你会看到行为上的差异.

使用actionBarItemBackground现在是更改操作项背景的正确方法.

如果您正在使用ActionBarSherlock,请记住您android在主题中需要-prefixed和non-prefixed版本才能在所有API级别上运行.