我正在尝试更改 ActionBar 选项卡上的颜色以匹配我的应用程序中使用的颜色。我一直在关注这里的博客文章:http://blog.alwold.com/2013/08/28/styling-tabs-in-the-android-action-bar/这非常有帮助。但是,在步骤 1 中设置主题时,我找不到父属性的正确值。该网站列出了“Theme.Sherlock”,但我没有使用 ActionBarSherlock,因此这不适用。
我的XML如下:
<style name="PropertyApp" parent="@style/Widget.Holo.ActionBar.TabView">
<item name="android:actionBarTabStyle">@style/PropertyApp.ActionBar.Tab</item>
<item name="actionBarTabStyle">@style/FindMyTrain.ActionBar.Tab</item>
</style>
<style name="PropertyApp.ActionBar.Tab">
<item name="android:background">@drawable/tab_bar_background</item>
</style>
无论我在顶部样式定义中使用什么父样式,都会收到错误消息“找不到与给定名称匹配的资源:attr 'actionBarTabStyle'”。另外,我被告知无法解析符号“PropertyApp.ActionBar.Tab”。
最佳答案
您的问题是您正在为主 PropertyApp
样式指定 Widget.Holo.ActionBar.TabView
父样式。
您需要将其放入 PropertyApp.ActionBar.Tab
样式中。
然后放置 PropertyApp
的主父主题,例如 Theme.Holo。
<style name="PropertyApp" parent="android:style/Theme.Holo">
<item name="android:actionBarTabStyle">@style/PropertyApp.ActionBar.Tab</item>
</style>
<style name="PropertyApp.ActionBar.Tab" parent="android:style/Widget.Holo.ActionBar.TabView">
<item name="android:background">@drawable/tab_bar_background</item>
</style>
父样式的命名还取决于您所针对的 API 级别。例如,如果您正在使用 AppCompat。
您可以引用documentation关于更改选项卡背景。
关于android - 设置 ActionBar 选项卡的样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23317975/