0

since last night I'm expecting this weird behavior of my application theme: Popup menus appear with black background and AlertDialogs with white text color.

Black popup menu background White text color on alert dialog

By the way, heres my styles.xml:

<resources xmlns:tools="http://schemas.android.com/tools" xmlns:android="http://schemas.android.com/apk/res/android">
    <style name="CustomActionBarTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <item name="android:actionBarStyle" tools:ignore="NewApi">@style/MyActionBar</item>

        <item name="actionBarStyle">@style/MyActionBar</item>
    </style>

    <style name="MyActionBar"
        parent="Widget.AppCompat.Light.ActionBar.Solid.Inverse">
        <item name="android:background">@drawable/action_bar_background</item>

        <!-- Support library compatibility -->
        <item name="background">@drawable/action_bar_background</item>
    </style>

</resources>

Any idea whats wrong? I just want the popup menu to use the default light theme again and the alert dialog to use a black foreground color.

4

2 に答える 2

1

なぜ間違っていると思いますか?

PopupWindow の背景が暗いTheme.Light:

<style name="Widget.PopupWindow">
    <item name="android:popupBackground">@android:drawable/editbox_dropdown_background_dark</item>
    <item name="android:popupAnimationStyle">@android:style/Animation.PopupWindow</item>
</style>

変更したい場合は、テーマのポップアップ ウィンドウ スタイルをオーバーライドする必要があります。

<style name="CustomActionBarTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="android:actionBarStyle" tools:ignore="NewApi">@style/MyActionBar</item>
    <item name="android:popupWindowStyle">@style/YourCustomStyle</item>
    <item name="actionBarStyle">@style/MyActionBar</item>
</style>

<style name="YourCustomStyle" parent="@android:style/Widget.PopupWindow">
    <item name="android:popupBackground">@drawable/your_background</item> 
</style>

アラート ダイアログは同じ方法でカスタマイズされます

于 2014-04-03T20:55:31.377 に答える