我试图更改项目的颜色,当它按下时。我在操作栏样式中使用了actionBarItemBackground
项,但是什么也没有发生。
这是我的代码:
<style name="ActionBarStyle" parent="@style/Widget.AppCompat.ActionBar.Solid">
<item name="android:background">@color/actionbar_background</item>
<item name="titleTextStyle">@style/ActionBarStyle.Title</item>
<item name="actionBarItemBackground">@drawable/action_bar_item_selector</item>
<item name="android:actionBarItemBackground" tools:ignore="NewApi">@drawable/action_bar_item_selector</item>
</style>
和选择器:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/pressed_item" android:state_focused="true"/>
<item android:drawable="@drawable/pressed_item" android:state_pressed="true"/>
<item android:drawable="@android:color/transparent"/>
</selector>
和可绘制的:
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" >
<solid android:color="#FF0000"/>
</shape>
什么是磨损?有人吗
最佳答案
actionBarItemBackground
不是Widget.ActionBar
的继承。无论您应用ActionBarStyle
的位置如何,都应将其放置在根主题中,而不是ActionBarStyle
。因此,类似:
<style name="Your.Theme" parent="@style/Theme.AppCompat">
<item name="actionBarStyle">@style/ActionBarStyle</item>
<item name="android:actionBarStyle">@style/ActionBarStyle</item>
<item name="actionBarItemBackground">@drawable/action_bar_item_selector</item>
<item name="android:actionBarItemBackground" tools:ignore="NewApi">@drawable/action_bar_item_selector</item>
</style>
关于android - 具有AppCompat actionBarItemBackground的ActionBar无法正常工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20766470/