簡體   English   中英

為什么我的Android警告對話框是黑色的?

[英]Why is My Android Alert dialog BLACK?

你能幫我搞清楚為什么我的警報對話框黑了?!

最近我更改了我的應用主題以支持材料設計,但我的警報對話框變黑了!

這是我的創建對話框代碼:

AlertDialog.Builder alertDialog = new AlertDialog.Builder(TestActivity.this);
    alertDialog.setCancelable(true);
    alertDialog.setTitle("sample");
    alertDialog.setItems(new String[] { "a", "b" }, new OnClickListener() {

        @Override
        public void onClick(DialogInterface dialog, int which) {
            // TODO Auto-generated method stub

        }
    });

    alertDialog.show();

它是我的主要風格和對話風格

<style name="MaterialTheme" parent="Theme.AppCompat.NoActionBar">

    <item name="android:alertDialogStyle">@style/AppDialog</item>
    <item name="android:alertDialogTheme">@style/AppDialog</item>
    <item name="android:textColor">@color/black</item>
    <item name="android:textColorPrimary">@color/black</item>
    <item name="android:dialogTheme">@style/AppDialog</item>
    <item name="colorPrimaryDark">@color/myPrimaryDarkColor</item>
    <item name="android:textColorHint">@color/gray_1</item>
    <item name="colorAccent">@color/myAccentColor</item>
    <item name="drawerArrowStyle">@style/DrawerArrowStyle</item>
    <item name="android:windowBackground">@color/black</item>
</style>

<style name="AppDialog" parent="Theme.AppCompat.Light.Dialog.Alert">
    <item name="colorAccent">#FFC107</item>
    <item name="android:textColorPrimary">#FFFFFF</item>
    <item name="android:background">#4CAF50</item>
</style>

您沒有為AlertDialog設置主題,因為使用主題,將代碼更改為:

ContextThemeWrapper ctw = new ContextThemeWrapper(TestActivity.this, R.style.AppDialog);
AlertDialog.Builder alertDialog = new AlertDialog.Builder(ctw);

您必須在alertdialog構建器中使用light主題,例如THEME_HOLO_LIGHT。

AlertDialog.Builder alertDialog = new AlertDialog.Builder(this,AlertDialog.THEME_HOLO_LIGHT);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM