背景透明的 Dialog
16lz
2021-01-24
一:控制Dialog 的背景方法:
1.定义一个无背景主题主题
<!--去掉背景Dialog-->
<style name="NobackDialog" parent="@android:style/Theme.Dialog">
<item name="android:windowBackground">@color/no_back</item>
</style>2.创建Dialog
dialog = new Dialog(this,R.style.dialog);
dialog.setContentView(R.layout.dialog_loading);
or:
dialog = new Dialog(this,R.style.NobackDialog);
LayoutInflater mInflater = LayoutInflater.from(this);
View dialogProcessBar = mInflater.inflate(R.layout.dialog_loading,null);
dialog.setView(dialogProcessBar,0, 0, 0, 0);二:控制Dialog 以及内部控件的背景方法:
dialog = new Dialog(this,R.style.dialog);
WindowManager.LayoutParams lp=dialog.getWindow().getAttributes();
// 模糊度getWindow().setFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND, WindowManager.LayoutParams.FLAG_BLUR_BEHIND); dialog.getWindow().setAttributes(lp);
lp.alpha=0.5f;(0.0-1.0)//透明度,黑暗度为lp.dimAmount=1.0f;
三:去掉边框、title 等参数
<resources>
<style name="dialog" parent="@android:style/Theme.Dialog">
<item name="android:windowFrame">@null</item><!--边框-->
<item name="android:windowIsFloating">true</item><!--是否浮现在activity之上-->
<item name="android:windowIsTranslucent">false</item><!--半透明-->
<item name="android:windowNoTitle">true</item>
<item name="android:background">@android:color/black</item>
<item name="android:windowBackground">@null</item>
<item name="android:backgroundDimEnabled">false</item><!--模糊-->
</style>
</resources>
1.定义一个无背景主题主题
<!--去掉背景Dialog-->
<style name="NobackDialog" parent="@android:style/Theme.Dialog">
<item name="android:windowBackground">@color/no_back</item>
</style>2.创建Dialog
dialog = new Dialog(this,R.style.dialog);
dialog.setContentView(R.layout.dialog_loading);
or:
dialog = new Dialog(this,R.style.NobackDialog);
LayoutInflater mInflater = LayoutInflater.from(this);
View dialogProcessBar = mInflater.inflate(R.layout.dialog_loading,null);
dialog.setView(dialogProcessBar,0, 0, 0, 0);二:控制Dialog 以及内部控件的背景方法:
dialog = new Dialog(this,R.style.dialog);
WindowManager.LayoutParams lp=dialog.getWindow().getAttributes();
// 模糊度getWindow().setFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND, WindowManager.LayoutParams.FLAG_BLUR_BEHIND); dialog.getWindow().setAttributes(lp);
lp.alpha=0.5f;(0.0-1.0)//透明度,黑暗度为lp.dimAmount=1.0f;
三:去掉边框、title 等参数
<resources>
<style name="dialog" parent="@android:style/Theme.Dialog">
<item name="android:windowFrame">@null</item><!--边框-->
<item name="android:windowIsFloating">true</item><!--是否浮现在activity之上-->
<item name="android:windowIsTranslucent">false</item><!--半透明-->
<item name="android:windowNoTitle">true</item>
<item name="android:background">@android:color/black</item>
<item name="android:windowBackground">@null</item>
<item name="android:backgroundDimEnabled">false</item><!--模糊-->
</style>
</resources>
更多相关文章
- Android(安卓)获取window状态栏和标题栏的高度
- Android异步操作UI界面的四种方法(载至网络 )
- Android的 Activity生死周期
- android 仿淘宝京东等viewpager自动滚动
- [已解决] MediaPlayer.setVolume设置声音大小失效问题
- android AppWidgetProvider 使用方法
- Android(安卓)7.1.1 Toast引起的Crash
- Android(安卓)Service之onStartCommand方法研究
- Bundle源码解析