您的位置:首页 > 移动开发 > Android开发

Android全局对话框的几种实现方法

2018-01-19 19:33 253 查看
第一种方法:利用系统的dialog

在dialog.show()语句前加入:dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);

其中Dialog使用的Context必须为ApplicationContext(即getApplicationContext())。

然后在AndroidManifest.xml中加入权限:android.permission.SYSTEM_ALERT_WINDOW。

注意:在6.0及以上系统中需要用户授权该权限(参考https://www.jianshu.com/p/2746a627c6d2)

第二种方法:使用WindowManager,直接添加view

可参考 http://www.cnblogs.com/mythou/p/3244208.html#3757468 同时也需添加权限:android.permission.SYSTEM_ALERT_WINDOW

第三种方法:使用一个透明的Activity当背景,在该Activity上弹出对话框

可以给Activity设置主题 android:theme="@android:style/Theme.Translucent"
为透明背景

第四种方法:使用Activity作为对话框

设置Activity的主题使用Dialog相关主题,从而实现Dialog显示风格(Activity作为Dialog使用可参考我之前的文章

参考: http://blog.csdn.net/hp910315/article/details/50255839
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: