2017-06-16 121 views
1

我想在我的应用程序上应用主题。除了我使用display_menu.xml文件膨胀的菜单外,一切正常。我在这里做错了什么?风格不适用于菜单项目

我styles.xml

<style name="AppTheme.Dark"> 
     <!-- Customize your theme here. --> 
     <item name="colorPrimary">@color/colorPrimary</item> 
     <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
     <item name="colorAccent">@color/colorAccent</item> 
     <item name="android:textColorPrimary">@color/textColorPrimary</item> 
     <item name="android:colorBackground">@color/colorBackground</item> 
     <item name="android:textColorSecondary">@color/textColorPrimary</item> 
     <item name="android:windowBackground">@color/colorBackground</item> 
     <item name="android:textColorSecondaryInverse">@color/textColorPrimary</item> 
     <item name="android:textColor">@color/textColorPrimary</item> 
     <item name="cardStyle">@style/CardView.Dark</item> 
     <item name="android:popupMenuStyle">@style/MyApp.PopupMenu</item> 
    </style> 

    <style name="MyApp.PopupMenu" parent="android:Widget.Holo.Light.ListPopupWindow"> 
     <item name="android:popupBackground">@drawable/menu_dropdown_panel</item> 
     <item name="android:textAppearanceListItem">@style/MyText</item> 
    </style> 

    <style name="MyText"> 
     <item name="android:textColor">@color/colorAccent</item> 
    </style> 

我display_menu.xml

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

    <item 
     android:id="@+id/action_refresh" 
     android:title="@string/action_refresh" 
     app:showAsAction="never" /> 

</menu> 

我夸大它像

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 

    MenuInflater inflater = getMenuInflater(); 
    inflater.inflate(R.menu.display_menu, menu); 
    return true; 
} 

我的菜单项显示的是这样的:

enter image description here

这是我试图把在后台的绘制:

enter image description here

我想给菜单项的背景,我的colorPrimary **和文本颜色为textColorPrimary

+0

因为你不使用全息主题,那么为什么你申请的弹出菜单由于Android的父: Widget.Holo.Light.ListPopupWindow, –

+0

那么我应该改变它呢? –

+0

看到答案,希望它能帮助你。 –

回答

0

这有助于我

添加弹出菜单样式UR AppTheme:

<style name="AppTheme" parent="android:Theme.Light"> 
    <item name="android:popupMenuStyle">@style/PopupMenu</item> 
</style> 

<style name="PopupMenu" parent="@android:style/Widget.PopupMenu"> 
    <item name="android:popupBackground">@android:color/white</item> 
</style> 

的manifest.xml:

<application 
    android:allowBackup="true" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme" > 
............. 
</application> 
+0

它不工作.. –

+0

让我看看你的style.xml和menifest.xml文件代码。 –

+0

经过数小时的沮丧,我切换到浮动操作按钮。不管怎么说,多谢拉。 –