【问题标题】:Why is My Android Alert dialog BLACK?为什么我的 Android 警报对话框是黑色的?
【发布时间】:2015-09-06 10:42:45
【问题描述】:

你能帮我弄清楚为什么我的警报对话框是黑色的吗?!

最近我更改了我的应用主题以支持材料设计,但我的警报对话框变黑了!

这是我的创建对话框代码:

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>

【问题讨论】:

标签: android android-alertdialog android-styles


【解决方案1】:

您没有为AlertDialog设置主题,使用主题,将代码更改为:

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

【讨论】:

    【解决方案2】:

    您必须在警报对话框构建器中使用浅色主题,例如 THEME_HOLO_LIGHT。

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

    【讨论】:

    • 谢谢您的评论,确实如此。但是,我认为它很简单并且可以自我解释。
    • 但这已被弃用?
    猜你喜欢
    • 2017-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多