如果我使用Activity或View,从服务启动Dialog?

时间:2011-09-22 16:30:50

标签: java android

说我正在运行一项服务,需要弹出一个对话框。我们知道,直接从服务启动对话是不可能的,因此我们需要启动和活动(或查看),然后让它启动我们的对话框。

对话框以及启动它的活动不应该阻碍它下面的任何内容,即屏幕上的内容不应变为灰色,并且对话框外的任何按钮都应该仍然可以点击。

这可以通过使用活动来实现,还是活动会阻止其下的视图?

如果是这样,猜测我将不得不使用一个视图...因为我以前没有使用过视图,初始化它的正确方法是什么,所以它不会阻碍它下面的任何内容? / p>

谢谢!

2 个答案:

答案 0 :(得分:1)

您可以使用Dialog主题将其作为活动启动: http://developer.android.com/guide/topics/ui/themes.html(参见标题:将主题应用于活动或应用程序)

虽然,无论你怎么会以某种方式阻碍用户;-)。此方法应该只显示一个最小的对话框,而不是占据整个屏幕

答案 1 :(得分:1)

  

这可以通过使用活动

来实现

没有

  

活动会阻止它下面的视图吗?

  

如果是这样,我猜我必须使用视图

视图通常由活动托管。服务不能只创建一些随机视图并将其放在屏幕上。

您可以尝试将Toast与自定义View一起用于无模式“对话框”,但我不确定服务构造的View是否适用于此。