1

オーバーフロー メニューの背景色を変更したいのですが、AppCompat をテーマとして使用しています。結果なしでたくさんの組み合わせを試しました。

私のstyles.xml

<!-- Application theme. -->
<style name="AppTheme" parent="AppBaseTheme">
    <item name="android:actionOverflowButtonStyle">@style/OverflowMenuButton</item>
    <item name="android:actionBarStyle">@style/AppBaseTheme.MyActionBar</item>
    <item name="android:actionBarTabStyle">@style/MyActionBarTabs</item>
    <item name="android:actionBarTabTextStyle">@style/MyActionBarTabText</item>
    <item name="android:popupMenuStyle">@style/MyPopupMenu</item>
</style>
...
<style name="MyPopupMenu" parent="style/Widget.AppCompat.Light.ActionButton.Overflow">
    <item name="android:popupBackground">#64666666</item>
</style>

android 名前空間 ( ) を使用した場合と使用しない場合の両方で試した属性についてはandroid:、PopupMenu の正しい親を参照していないと思いますが、これまでに見つけたものです。

4

2 に答える 2

0

これが私のために働いたstyles.xmlです(アクションバーの背景といくつかのテキストの色が含まれていますが、必須ではありません):

<resources xmlns:tools="http://schemas.android.com/tools">

<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.DayNight.DarkActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
    <item name="actionOverflowMenuStyle">@style/AppTheme.OverflowPopupMenu</item>
    <item name="android:actionBarStyle"   tools:ignore="NewApi">@style/AppTheme.ActionBar</item>
    <item name="actionBarStyle">@style/AppTheme.ActionBar</item>
</style>



<style name="AppTheme.ActionBar" parent="@style/Widget.AppCompat.Light.ActionBar.Solid.Inverse">
    <item name="android:background"  tools:ignore="NewApi">@color/colorPrimary</item>
    <item name="background">@color/colorPrimary</item>
</style>

<style name="AppTheme.OverflowPopupMenu" parent="Widget.AppCompat.PopupMenu.Overflow">
    <!--<item name="android:popupBackground">@color/colorPrimary</item>-->
    <item name="android:popupBackground">@drawable/menu_dropdown_panel</item>
</style>

ただし、カラー 16 進リソースだけを使用しているかのように、背景に .9 ドローアブルを使用する必要がありました。オーバーフロー メニューの周りに太い黒の境界線が表示されます。まだそこにありますが、透明になりました。

于 2016-11-15T05:37:59.247 に答える
0

ここでアクションバースタイルを簡単に行うことができます

于 2014-10-07T06:49:45.967 に答える