1.新建一个继承AppCompatActivity的Activity,编写对应的布局文件.
2.添加一个新的style ,然后在清单文件上使用起来
<style name="DialogActivityStyle" parent="Theme.AppCompat.Dialog">
<item name="android:windowBackground">@android:color/transparent</item>
<!--设置Dialog的windowFrame框为无-->
<item name="android:windowFrame">@null</item>
<!--设置无标题-->
<item name="android:windowNoTitle">true</item>
<!--是否浮现在activity之上-->
<item name="android:windowIsFloating">true</item>
<!--背景是否模糊显示-->
<item name="android:backgroundDimEnabled">true</item>
</style>
3.调用setFinishOnTouchOutside(false);已达到点击空白部分不能返回的效果;
设置activity的宽高
WindowManager m = getWindowManager();
Display d = m.getDefaultDisplay(); //为获取屏幕宽、高
WindowManager.LayoutParams p = getWindow().getAttributes(); //获取对话框当前的参数值
p.height = (int) (d.getHeight() * 0.4); //高度设置为屏幕的0.6
p.width = (int) (d.getWidth() * 0.6); //宽度设置为屏幕的0.7
p.alpha = 1.0f; //设置本身透明度
p.dimAmount = 0.5f; //设置窗口外黑暗度
getWindow().setAttributes(p);
调用setTitle(null);去掉title.
以上代码都在onCreate中setContentView后添加