2015-03-27 4 views
0

Ниже перечислены стили, я подаю:ActionBar стиль не работает

<style name="AppTheme" parent="Theme.AppCompat.Light"> 
     <!-- Customize your theme here. --> 
     <item name="android:windowNoTitle">true</item> 
     <item name="android:actionBarTabStyle">@style/ActionBarTabStyle.MY_STYLE</item> 
     <item name="android:actionBarStyle">@style/MyActionBar</item> 
    </style> 

<style name="ActionBarTabStyle.MY_STYLE" parent="@style/Widget.AppCompat.Light.ActionBar.TabView"> 
    <item name="android:paddingLeft">1dip</item> 
    <item name="android:paddingRight">1dip</item> 
    </style> 
<style name="MyActionBar" parent="Theme.AppCompat.Light"> 
     <item name="android:background">#ffffff</item> 
    </style> 

Но оба эти стили не работают. Ни ширина ActionBar таблеток не уменьшается, а цвет фона ActionBar меняется.

ответ

1

Вы можете попробовать это?

<style name="CustomActionBarTheme" parent="@style/Theme.AppCompat"> 
    <item name="android:windowActionBarOverlay">true</item> 
    <item name="android:actionBarStyle">@style/MyActionBar</item> 
    <item name="android:actionBarTabTextStyle">@style/MyTitleTextStyle</item> 
    <item name="android:actionMenuTextColor">@color/wheat</item> 
    <item name="android:actionMenuTextAppearance">@style/MyTitleTextStyle</item> 

    <!-- Support library compatibility --> 
    <item name="actionBarStyle">@style/MyActionBar</item> 
    <item name="actionBarTabTextStyle">@style/MyTitleTextStyle</item> 
    <item name="actionMenuTextColor">@color/wheat</item> 
    <item name="windowActionBarOverlay">true</item> 
    <item name="actionMenuTextAppearance">@style/MyTitleTextStyle</item> 
</style> 

<style name="MyTitleTextStyle" parent="@style/TextAppearance.AppCompat.Widget.ActionBar.Title"> 
    <item name="android:textColor">@color/wheat</item> 
    <item name="android:textSize">21sp</item> 
    <item name="android:textStyle">bold</item> 
</style> 

<style name="MyActionBar" parent="@style/Widget.AppCompat.Light.ActionBar.Solid"> 
    <item name="android:titleTextStyle">@style/MyTitleTextStyle</item> 
    <item name="android:backgroundSplit">@drawable/actionbar_dr</item> 
    <item name="android:background">@drawable/actionbar_dr</item> 

    <!-- Support library compatibility --> 
    <item name="titleTextStyle">@style/MyTitleTextStyle</item> 
    <item name="background">@drawable/actionbar_dr</item> 
    <item name="backgroundSplit">@drawable/actionbar_dr</item> 
</style> 

и помните, добавьте этот стиль в values-v11 и values-v14 style.xml

Это идеальный вариант, работающий в моем случае.

enter image description here

Попробуйте drawable как Action Bar фон

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 

<item android:state_pressed="true"><shape> 
     <solid android:color="#449def" /> 

     <stroke android:width="1dp" android:color="#2f6699" /> 

    </shape></item> 
<item><shape> 
     <gradient android:angle="270" android:endColor="#2f6699" android:startColor="#449def" /> 

     <stroke android:width="1dp" android:color="#2f6699" /> 

    </shape></item> 

</selector> 
+0

​​# ffffff дает ошибку. И как только я прокомментирую это, он устанавливает черный фон. Также один из представлений появляется без содержимого. – Nitish

+0

@Nitish Вы просто меняете цвет согласно вашему требованию. –

+0

Я установил цвет только как #ffffff. Тем не менее он кажется черным. – Nitish

1

Я думаю, что андроид: фон атрибут (внутри ActionBarStyle) не сказа цвета, но только Drawable ресурс (с этим как говорится, я все еще не может изменить цвет панели действий)

Смежные вопросы