部分手机无法显示Dialog问题

在项目中有时候需要用到系统弹窗,即让当前dialog显示在所有视图之上,一般来说,设置Dialog的type即可,如下:


  1. dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);  
	<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
	<uses-permission android:name="android.permission.SYSTEM_OVERLAY_WINDOW" />


但是有时候就是会遇到奇葩的问题,部分手机始终无法弹窗成功,如魅族,小米,

但是某些手机对底层进行了修改(小米,魅族之类),系统会默认会拒绝该权限。 

通过将type设定为TYPE_TOAST, 就可以绕过检查 

  1. dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_TOAST);  



评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

nibinusm22b

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值