2015-09-20 45 views
0

颜色是否可以指定colorPrimary和colorAccent个人风格elments而不是主题标签指定的个人风格标签

<style name="MyCustomTabLayout" parent="android:Widget">   
    <item name="colorPrimaryDark">@color/gray900</item> 
    <item name="colorAccent">@color/gray50</item> 

    <item name="tabBackground">?attr/colorPrimaryDark</item> 
    <item name="tabSelectedTextColor">?android:colorAccent</item> 
</style> 

<style name="MyCustomTabLayout2" parent="android:Widget">   
    <item name="colorPrimaryDark">@color/gray50</item> 
    <item name="colorAccent">@color/gray900</item> 

    <item name="tabBackground">?attr/colorPrimaryDark</item> 
    <item name="tabSelectedTextColor">?android:colorAccent</item> 
</style> 

,当我试图做的是应用这个默认的主题。有没有一种方法/更好的方法来做到这一点?

回答

0

小部件在上下文主题上查找自己的口音颜色等。如果您使用最新的appcompat suport库,则可以定义不同的主题来保存样式,并使用android:theme属性将它们应用于不同的版式。见https://chris.banes.me/2014/11/12/theme-vs-style/

引述的例子有:

RES /值/的themes.xml

<style name="RedThemeOverlay" parent="android:ThemeOverlay.Material"> 
    <item name="android:colorEdgeEffect">#FF0000</item> 
</style> 

RES /布局/ fragment_list.xml

<ListView 
    ... 
    android:theme="RedThemeOverlay" />