这是一种解决方法,但它并不是一个纯粹的解决方案,因为后台触摸已禁用,应手动配置.
首先,像这样设置自定义对话框主题.
styles.xml
true
false
@android:color/transparent
将windowIsFloating设置为false会强制将对话框视图扩展为全屏.将windowBackground设置为transparent将删除Dialog下的默认黑色暗淡背景. windowNoTitle选项删除了上标题栏.
CustomDialog.java
应用主题并构建custom_dialog视图,如下所示.
public HTCustomDialog(Context context) {
super(context, R.style.CustomDialogTheme);
setContentView(R.layout.custom_dialog);
}
custom_dialog.xml
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/main_solid_80">
android:id="@+id/dialog_root"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_marginLeft="50dp"
android:layout_marginRight="50dp"
android:background="@drawable/bg_popup"
android:padding="16dp">
现在CustomDialog视图是一个全屏视图,将根布局的背景设置为您想要的任何颜色.
样本结果
我把结果拼凑了一下.