第一步,drawable新建一个圆角的背景xml dialog.xml
<?xml version="1.0" encoding="utf-8"?>
<!-- 用户注册红色按钮 -->
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle"><!-- android:shape="" 表示是圆角矩形还是椭圆等等 -->
<solid android:color="背景颜色" />
<!-- 背景颜色 -->
<!-- padding 表示内部空间距离背景图片内部边距 的距离 -->
<padding android:top="15dp" android:bottom="15dp" />
<stroke
android:width="0dp"
android:color="#ffffff" />
<!-- 图片边框属性 -->
<corners android:radius="5dp" />
<!-- 圆角的程度 -->
<gradient
android:angle="45"
android:centerColor="渐变中间的颜色"
android:centerX="0.5"
android:centerY="0.5"
android:endColor="渐变结束的颜色"
android:startColor="渐变开始的颜色"
android:type="linear" />
</shape>
第二步:在style.xml下建立自定义style
<style name="my_dialog" parent="@android:style/Theme.Dialog">
<item name="android:colorBackgroundCacheHint">@null</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowFrame">@null</item><!--边框-->
<item name="android:windowIsFloating">true</item><!--是否浮现在activity之上-->
<item name="android:windowIsTranslucent">false</item><!--半透明-->
<item name="android:background">@drawable/dialog</item><!--dialog背景样式-->
<item name="android:windowBackground">@android:color/transparent</item><!-- 背景透明 -->
<item name="android:backgroundDimEnabled">true</item><!--模糊-->
</style>
第三步:
建立一个自定义的layout文件my_layout.xml,内容随你喜欢,这里就不写了
第四步:
Dialog dialog = new Dialog(context, R.style.my_dialog);
dialog.setContentView(R.layout.my_layout.xml);
搞定