style.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!--全屏dialog-->
<style name="fullDialog" parent="@android:style/Theme.Holo.Dialog">
<item name="android:windowFullscreen">true</item>
<!-- 是否有边框 -->
<item name="android:windowFrame">@null</item>
<!--是否在悬浮Activity之上 -->
<item name="android:windowIsFloating">true</item>
<!--标题 -->
<item name="android:windowNoTitle">true</item>
<!--阴影 -->
<item name="android:windowIsTranslucent">true</item>
<!--透明背景-->
<item name="android:background">@android:color/transparent</item>
<!--窗口背景透明-->
<item name="android:windowBackground">@android:color/transparent</item>
<!--弹窗背景是否变暗-->
<item name="android:backgroundDimEnabled">false</item>
</style>
</resources>
Dialog:
public class AADialog extends Dialog {
public AADialog(@NonNull Context context) {
super(context, R.style.fullDialog);
init(context);
}
private void init(Context context){
View view = LayoutInflater.from(context).inflate(R.layout.dialog, null);
Window window = this.getWindow() ;
window.setContentView(view);
//设置window背景,默认的背景会有Padding值,不能全屏。当然不一定要是透明,你可以设置其他背景,替换默认的背景即可。
window.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
//一定要在setContentView之后调用,否则无效
window.setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
}
}