为了账号安全,请及时绑定邮箱和手机立即绑定

如何显示服务中的对话框

如何显示服务中的对话框

紫衣仙女 2019-08-02 16:46:28
如何显示服务中的对话框我已经阅读了很多关于这个主题的帖子,但是没有什么对我有用(或者没有我想要的效果)。我有一个应用程序,登录后启动后台服务(Service类的实现)。此服务与服务器同步,如果有新订单,则会创建通知。到目前为止,一切都很好,我有通知和Toast消息。但是,我想要一个对话框,通知用户有关新订单的信息。据我所知,您可以从服务中启动一个活动,该活动显示对话框。这有效,但活动从当前活动堆栈开始并显示对话框。我有一个没有附加视图的活动,但是它在黑色背景上正确显示了对话框。我想要的是在当前活动上显示对话框,导致实际背景(运行活动)淡出并显示对话框。这有点可能吗?
查看完整描述

3 回答

?
慕少森

TA贡献2019条经验 获得超9个赞

只有在系统警报对话框中,我们才能显示来自服务的对话框。因此,将TYPE_SYSTEM_ALERT窗口布局参数设置为Dialog,如下所示:

dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);

但是,它需要SYSTEM_ALERT_WINDOW权限。所以,不要忘记在Manifest文件中添加此权限。

<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>


查看完整回答
反对 回复 2019-08-02
?
至尊宝的传说

TA贡献1789条经验 获得超10个赞

你可以从学习如何创建一个看起来像对话框的活动开始(没有标题栏,透明背景,“浮动”效果等),不,你不能只是在没有激活的情况下启动一个对话框


查看完整回答
反对 回复 2019-08-02
  • 3 回答
  • 0 关注
  • 470 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信