继承AppCompatActivity透明主题
<style name="MyTransparent" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:windowBackground">@android:color/transparent</item> <!-- 背景色透明度 -->
<item name="android:windowNoTitle">true</item><!-- 无标题 -->
<item name="android:windowIsTranslucent">true</item><!-- 半透明,设置为false无透明效果 -->
<item name="android:backgroundDimEnabled">true</item><!-- 模糊 -->
<item name="android:windowAnimationStyle">@android:style/Animation.Translucent</item> <!-- 窗口样式Dialog -->
</style>
对话框透明
<style name="TransDialogStyle" parent="Base.Theme.AppCompat.Light.Dialog">
<!--边框-->
<item name="android:windowFrame">@null</item>
<!--是否浮在窗口之上-->
<item name="android:windowIsFloating">true</item>
<!--半透明-->
<item name="android:windowIsTranslucent">false</item>
<!--是否显示title-->
<item name="android:windowNoTitle">true</item>
<item name="android:windowBackground">@android:color/transparent</item><!--背景透明-->
<!--dialog之外没有焦点的区域是否罩上黑色半透明 主要是这个地方false表示不要遮罩-->
<item name="android:backgroundDimEnabled">false</item>
</style>
如果不行,可以在使用的时候加上下面代码
//去掉黑色半透明遮罩
Window window = dialog.getWindow();
window.setDimAmount(0f);
window.setBackgroundDrawableResource(android.R.color.transparent);