灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:2577回复:0

android在Service中弹出Dialog对话框,即全局性对话框

楼主#
更多 发布于:2012-12-08 13:37

先说具体做法,原因在其后给出:

写好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(),就会弹出提示框来。


喜欢0 评分0
游客

返回顶部