我跟随this Guide来设计我的动作条。我在我的应用程序中使用了fixedtabs,所以我也希望为选项卡设置主题。
(注意:我使用appcompat主题来确保向后兼容)
所以我用过
<style
name="CustomTheme"
parent="@style/Theme.AppCompat.Light" >
<item name="android:actionBarStyle">@style/CustomActionBar</item>
<item name="actionBarStyle">@style/CustomActionBar</item>
<item name="android:actionBarTabStyle">@style/CustomActionBarTabs</item>
<item name="actionBarTabStyle">@style/CustomActionBarTabs</item>
</style>
作为我的主题。
我毫无问题地设置了ActionBar的背景,但随后我尝试用以下选项设置选项卡的主题:
<style
name="CustomActionBarTabs"
parent="@style/Widget.AppCompat.ActionBar.TabView" >
<item name="android:background">@drawable/customtheme_actionbar_tab_indicator</item>
<item name="background">@drawable/customtheme_actionbar_tab_indicator</item>
</style>
背景指向一个StateList的地方,我为不同的上下文设置了不同的drawables,工作方式和预期的一样。但它只对标签有效。不是为了ActionBar。
选项卡栏的分隔符和背景没有主题。
我怎样才能主题化?(灰色部分)
主题创建指南
我想知道是否有任何准则来创建一个看起来不错的主题?
(good=与默认主题类似,因此该应用程序适合Android生态系统)
因为如果你仔细观察默认的主题,你可以在可绘制的actionbar底部看到一小行。(我主题中的浅绿色部分)
在创建一个看起来类似于默认主题的主题时,您可能还需要考虑其他一些事情,因此最好遵循一些准则。
另外:tabbar应该总是比actionbar暗吗?
(如果是,要暗多少?)
图像颜色(如图像中溢出按钮的颜色)应该比actionbar颜色亮/暗多少?
提前谢谢你,
乌里尔
最佳答案
添加此
<style
name="CustomTheme"
parent="@style/Theme.AppCompat.Light" >
.
.
.
<item name="android:actionBarTabBarStyle">@style/TabBar</item>
</style>
然后
<style name="TabBar" parent="@style/Widget.AppCompat.ActionBar.TabBar">
<item name="android:background">/** Whatever color you want, like #ffff00 **/</item>
</style>
关于android - 主题化Android ActionBar:更改TabBar背景,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21802591/