【Android】直接利用View创建Dialog
来源:互联网 发布:金融征信软件 编辑:程序博客网 时间:2024/06/03 20:29
项目需求,代码如下:
final Dialog dialog = new Dialog(context); dialog.requestWindowFeature(Window.FEATURE_NO_TITLE); dialog.setCancelable(false); dialog.setContentView(yourView); dialog.show();
设置dialog背景透明:
dialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));
利用style修改:
<style name="NewDialog"> <item name="android:windowFrame">@null</item> <item name="android:windowBackground">@android:color/transparent</item> <item name="android:windowIsFloating">false</item> <item name="android:windowContentOverlay">@null</item> <item name="android:windowTitleStyle">@null</item> <item name="android:windowAnimationStyle">@null</item> <item name="android:windowSoftInputMode">stateUnspecified|adjustPan</item> <item name="android:backgroundDimEnabled">false</item> <item name="android:background">@android:color/transparent</item> </style>
其中 android:windowIsFloating
这一项可配合windowManager layoutParam设置dialog的宽高,以及出现的位置,我的最终代码为:
dialog = new Dialog(context, R.style.NewDialog); dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);// dialog.setCancelable(true);// dialog.setContentView(bannerView); // set position // Setting dialogview Window window = dialog.getWindow(); window.setGravity(Gravity.TOP); WindowManager.LayoutParams param = window.getAttributes(); param.gravity = Gravity.TOP | Gravity.CENTER_HORIZONTAL; param.y = 100; window.setAttributes(param);// window.clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND); window.setLayout(WindowManager.LayoutParams.MATCH_PARENT, WindowManager.LayoutParams.WRAP_CONTENT); window.setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); dialog.setTitle(null); dialog.setCancelable(true); setOntouchDispose(context); dialog.setContentView(bannerView); dialog.show();
0 0
- 【Android】直接利用View创建Dialog
- Android 创建Dialog
- Android 创建Dialog
- android创建自定义dialog
- android 创建Dialog
- android 代码创建dialog
- Android自定义view-弹出式dialog
- ActivityGroup中的子Activity创建Dialog:android.view.WindowManager$BadTokenException: U
- Android Dialog I-创建一个dialog
- Android对话框dialog大全(代码直接可用)
- 利用构造者模式创建Dialog
- Android Dialog 列表的创建
- Android: web view loading process dialog
- Android dialog软键盘弹出顶起View
- Android自定义view之弹出式dialog
- Android自定义View(1):对话框-Dialog
- Android自定义View自定义圆形Dialog
- view上创建dialog,如何让dialog自动适应view的大小
- 理想的机器学习书
- c++11 thread 封装线程类
- C#内存分配学习
- AutoEncoder、RBM、DBM、DBN初探
- Ubuntu下crontab命令的用法
- 【Android】直接利用View创建Dialog
- 【LeetCode OJ 34】Search for a Range
- 从用户感知谈软件性能测试
- python实现简单爬虫功能
- Mybatis MapperScannerConfigurer 自动扫描 将Mapper接口生成代理注入到Spring
- C++虚函数
- UML学习总结(1)——UML学习入门
- Mysql主从复制/读写分离/proxy机制
- NSIS 静默安装