在主题中设置背景颜色可以提供图形错误对话框

时间:2014-08-19 14:03:45

标签: android layout android-activity themes

在我themes.xml的活动主题中,我设置了背景颜色,以便从默认(透明/白色?)背景色移到我自己的背景色。

<item name="android:background">@color/red</item>

不幸的是,当我显示我的加载对话框时,颜色现在在该对话框的中途闪耀。这是预期的吗?

Dialog with buggy red/transparent color

我尝试使用不同的主题,也是由Holo Light自己的对话框主题子类定义,将背景颜色明确地设置为白色,但问题仍然存在,在这种情况下只有当前仍然是白色的区域被更改。

我该怎么办?目前唯一的选择是使用Tradiotional Dialog Theme。

2 个答案:

答案 0 :(得分:0)

看起来标题的左侧和右侧有一些填充或边距。如果您使用的是内置版ProgressDialog,我建议您创建自己的Dialog,这样您就可以更改自己想要的内容。只需创建自己的xml布局并创建如下对话框:

protected static Dialog getProgressDialog(Activity activity) {

    Dialog dialog = new Dialog(activity);
    dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);

    LayoutInflater inflater = (LayoutInflater) activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    View progressDialogView = inflater.inflate(R.layout.custom_progress_dialog, null);

    dialog.setContentView(progressDialogView);
    dialog.setCancelable(false);
    return dialog;
}

答案 1 :(得分:0)

尝试设置android:windowBackgroundandroid:background属性应用于所有嵌套视图。以下是讨论:What's the difference between windowBackground and background for activities style?