2015-05-26 1 views
1

Я пытаюсь персонализировать свою панель действий. Я хочу, чтобы он поддерживал API-9 и выше , проблема в том, что панель действий не принимает изменения, сделанные в styles.xml, и элементы не отображаются.Панель действий не принимает личные стили

это мой styles.xml:

<resources> 

    <style name="AppBaseTheme" parent="Theme.AppCompat.Light"></style> 

    <style name="AppTheme" parent="AppBaseTheme"> 

     <item name="android:windowBackground">@color/background_window</item> 
     <item name="android:actionBarStyle">@style/ActionBarStyle</item> 
    </style> 

    <style name="ActionBarStyle" parent="@style/Theme.AppCompat.Light.DarkActionBar"> 
     <!--<item name="android:icon">@drawable/ic_launcher</item>--> 
     <item name="android:background">#ff127d08</item> 
    </style> 

</resources> 

приложение просто показывает брусок действия по умолчанию без значка ни элементы или фон, который я выбрал

+0

Это работало нормально, пока я не изменил свой основной вид деятельности, я расширялся от Фрагментов, но теперь я расширяюсь от ActionBarActivity, а также менял обращения getActionBar() к getSupportActionBar() –

ответ

1

Перейти к пользовательской теме, добавьте themes.xml внутри Рез -> значение FOLDER

использовать этот код для пользовательского ActionBar

themes.xml

<?xml version="1.0" encoding="utf-8"?> 
<resources> 

    <!-- the theme applied to the application or activity --> 
    <style name="CustomActionBarTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar"> 
     <item name="android:actionBarStyle">@style/MyActionBar</item> 
     <item name="android:actionBarTabStyle">@style/MyActionBarTabs</item> 

     <!-- Support library compatibility --> 

     <item name="android:actionBarTabTextStyle">@style/MyTheme.ActionBar.TabText</item> 
     <item name="android:actionBarTabBarStyle">@style/Divider</item> 
    </style> 

<!-- for Tab divider --> 
<style name="Divider" parent="@android:style/Widget.Holo.ActionBar.TabBar"> 
    <item name="android:divider">@android:color/transparent</item> //or use your transparent drawable image 
    <item name="android:showDividers">middle</item> 
    <item name="android:dividerPadding">0dp</item> 
</style> 

    <!-- ActionBar styles --> 
    <style name="MyActionBar" parent="@style/Widget.AppCompat.Light.ActionBar.Solid.Inverse"> 
     <item name="android:background">@color/easy</item> 
     <!-- Support library compatibility --> 
     <item name="background">@color/easy</item> 
    </style> 

    <style name="MyActionBarTabs" parent="@style/Widget.AppCompat.ActionBar.TabView"> 
     <item name="android:background">@drawable/actionbar_tab_indicator</item> 
    </style> 

    <style name="MyTheme.ActionBar.TabText" parent="android:style/Widget.Holo.ActionBar.TabText"> 

     <!-- This is a Black text color when selected and a WHITE color otherwise --> 
     <item name="android:textColor">@color/selector_tab_text</item> 
    </style> 

</resources> 

файл манифеста вызова ->CustomActionBarTheme

<application 
     android:allowBackup="true" 
     android:icon="@drawable/easylogo" 
     android:label="@string/app_name" 
     android:largeHeap="true" 
     android:theme="@style/CustomActionBarTheme" > 


     <activity 
      android:name="com.example.Start" 
      android:label="@string/app_name" 
      android:screenOrientation="portrait" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
</application> 
+0

панель действий не стилизована, а элементы не Не появится !!! –

2

Официальный способ установить действие бар цвета с appcompat-v7 осуществляется через colorPrimary на тему деятельности:

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <style name="Theme.Apptheme" parent="Theme.AppCompat"> 
    <item name="colorPrimary">@color/primary</item> 
    <item name="colorPrimaryDark">@color/primary_dark</item> 
    <item name="colorAccent">@color/accent</item> 
    </style> 
</resources> 

С уважением к значку, это было задано много раз, и the answer (getSupportActionBar().setDisplayShowHomeEnabled(true); и getSupportActionBar().setIcon(R.drawable.ic_launcher);) можно найти через веб-поиск appcompat icon.

+0

ОК, это работает, но проблема в том, что в панели действий не отображаются элементы! PLZ Что я могу сделать, чтобы исправить эту проблему? –

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