Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将AlertDialog后面的背景设置为黑色或不透明,而不替换为Dialog_Java_Android_Android Alertdialog - Fatal编程技术网

Java 将AlertDialog后面的背景设置为黑色或不透明,而不替换为Dialog

Java 将AlertDialog后面的背景设置为黑色或不透明,而不替换为Dialog,java,android,android-alertdialog,Java,Android,Android Alertdialog,如果不使用Dialog/CustomDialog,是否可以将AlertDialog后面的背景设置为不透明或黑色 <item name="android:backgroundDimEnabled">true</item> true 在我指定给AlertDialog构造函数的样式中。但它还不够暗,用户仍然可以看到我不希望他们看到的信息。老实说,我不想使用对话框的原因是,我已经用AlertDialog完成了所有工作,我认为最好检查一下是否有人知道一种快速的方法来实现这一点。

如果不使用Dialog/CustomDialog,是否可以将AlertDialog后面的背景设置为不透明或黑色

<item name="android:backgroundDimEnabled">true</item>
true

在我指定给AlertDialog构造函数的样式中。但它还不够暗,用户仍然可以看到我不希望他们看到的信息。老实说,我不想使用对话框的原因是,我已经用AlertDialog完成了所有工作,我认为最好检查一下是否有人知道一种快速的方法来实现这一点。

使用此代码这可能会对您有所帮助

final Dialog dialog = new Dialog(context);
        Window window = dialog.getWindow();
        window.setFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND,
        WindowManager.LayoutParams.FLAG_DIM_BEHIND);
dimAmount:0-不调光,1.0f完全调光。您可以检查以下内容:

private void dimActivity(Dialog dialog, float dimAmount) {
    WindowManager.LayoutParams lp = dialog.getWindow().getAttributes();
    lp.dimAmount = dimAmount;
    dialog.getWindow().setAttributes(lp);
    dialog.getWindow().addFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);
}