原文:http://www.2cto.com/kf/201212/174372.html
先说具体做法,原因在其后给出:
写好Alter功能块后,在alter.show()语句前加入:
alert.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);
注:alter为AlertDialog类型对象然后在AndroidManifest.xml中加入权限:
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"></uses-permission>
下面进行简单的解释:
如果只在Service中写入常在Activity中使用的创建Alter的代码,运行时是会发生错误的,因为Alter的显示需要依附于一个确定的Activity类。而以上做法就是声明我们要弹出的这个提示框是一个系统的提示框,即全局性质的提示框,所以只要手机处于开机状态,无论它现在处于何种界面之下,只要调用alter.show(),就会弹出提示框来。
本文介绍了一种在Android系统中实现全局提示框的方法,通过设置AlertDialog的类型为系统级,并在AndroidManifest.xml文件中添加相应的权限,使得提示框可以在任何应用界面之上显示。
4067

被折叠的 条评论
为什么被折叠?



