2016-03-29 3 views
0

У меня есть моя собственная тема стиля в моем приложении. Я пытаюсь изменить цветовую схему по умолчанию в Drop Down Navigation. Я добавил эти строки:Невозможно создать ActionBar Dropdown Navigation

<item name="android:actionDropDownStyle">@style/MyDropDownNav</item> 

и

<style name="MyDropDownNav"> 
    <item name="android:background">@color/orange</item> 
    <item name="android:popupBackground">@color/vermelho</item> 
    <item name="android:dropDownSelector">@drawable/seletor2</item> 
</style> 

Но стиль по умолчанию в режиме списка навигации имеет голубую цветовую гамму. Ничего не изменилось.

Полный код:

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <style name="Theme.Tema" parent="@android:style/Theme.Holo.Light"> 
     <item name="android:popupMenuStyle">@style/PopupMenu.MyAppTheme</item> 
     <item name="android:actionDropDownStyle">@style/MyDropDownNav</item> 
     <item name="android:actionBarStyle">@style/Theme.MyAppTheme.ActionBar</item> 


     <item name="android:listSelector">@drawable/seletor2</item> 
     <item name="android:panelFullBackground">@drawable/actionbarbackground</item> 
     <item name="android:actionBarItemBackground">@drawable/ab_item_background</item> 
     <item name="android:selectableItemBackground">@drawable/ab_item_background</item> 
     <item name="android:actionBarDivider">@color/laranja</item> 
     <item name="android:textColor">@color/verdeapp</item> // cor dos itens 
    </style> 
    <style name="PopupMenu.MyAppTheme" parent="@android:style/Widget.Holo.Light.ListPopupWindow"> 
     <item name="android:popupBackground">       @drawable/popup_menu_bg_color</item> 
    </style> 

    <style name="Theme.MyAppTheme" parent="@android:style/Theme.Holo"> 
     <item name="android:actionBarStyle">@style/Theme.MyAppTheme.ActionBar</item> 
     <item name="android:panelFullBackground">@drawable/actionbarbackground</item> 
    </style> 
    <style name="Theme.MyAppTheme.ActionBar" parent="@android:style/Widget.Holo.ActionBar"> 
     <item name="android:background">@drawable/actionbarbackground</item> 
     <item name="android:popupBackground">@drawable/actionbarbackground</item> 
     <item name="android:titleTextStyle">@style/Theme.MyAppTheme.titleTextStyle</item> 

    </style> 

    <style name="Theme.MyAppTheme.titleTextStyle" parent="@android:style/TextAppearance.Holo.Widget.ActionBar.Title.Inverse"> 
     <item name="android:textColor">@color/branco</item> // cor do título 
    </style> 

    <!-- style the list navigation --> 
    <style name="MyDropDownNav"> 
     <item name="android:background">@color/orange</item> 
     <item name="android:popupBackground">@color/vermelho</item> 
     <item name="android:dropDownSelector">@drawable/seletor2</item> 
    </style> 
</resources> 

ответ

0

Override следующее поле в вашем appTheme:

<item name="popupMenuStyle">@style/AppTheme.PopupMenu</item> 
    <item name="dropDownListViewStyle">@style/AppTheme.PopupMenuListView</item> 
    <item name="textAppearanceLargePopupMenu">@style/AppTheme.Text.SingleLine.Common</item> 
    <item name="textAppearanceSmallPopupMenu">@style/AppTheme.Text.SingleLine.Common</item> 

<style name="AppTheme.PopupMenu" parent="Widget.AppCompat.PopupMenu"> 
    <item name="android:popupBackground">@drawable/abc_popup_background_mtrl_mult</item> 
</style> 

<style name="AppTheme.PopupMenuListView" parent="Widget.AppCompat.ListView.DropDown"> 
    <item name="android:listSelector">@drawable/pressed_state_background</item> 
</style> 

Надеется, что это помогает Вам.

+0

Я не использую appCombat –

+0

Override в <стиль = имя родителя "Theme.MyAppTheme" = "@ андроид: стиль/Theme.Holo"> <имя элемента = "андроид: actionBarStyle"> @ стиль/Theme.MyAppTheme .ActionBar ​​@ drawable/actionbarbackground ? –

+0

Все элементы существуют в теме Холо. Переопределите их с помощью виджетов Holo в качестве родителей –