【问题标题】:Android Activity extends AlertDialogAndroid Activity 扩展了 AlertDialog
【发布时间】:2012-02-18 17:54:07
【问题描述】:

我有一个活动,其唯一目的是启动一个 AlertDialog。我的问题是我无法弄清楚要扩展什么活动,以便对话框在用户打开的任何内容之上打开。目前,它使用extends Activity 在其后面打开一个空白布局。我尝试的所有其他事情都会使活动充满错误。你们中的任何一位出色的互联网人都知道我可以做些什么来做到这一点,以便在触发活动时只打开 alertDialog 吗?

【问题讨论】:

  • “一个活动,其唯一目的是启动一个 AlertDialog”,这对我来说没有任何意义,请提供有关您的要求的更多解释。
  • 活动所做的只是调用一个 AlertDialog。这是我唯一打算让它做的事情。

标签: android extends android-alertdialog


【解决方案1】:

尝试添加自己的样式。在res\values\ 中创建(如果还没有)一个文件styles.xml,然后添加:

<?xml version="1.0" encoding="utf-8"?>
<resources>

    <style name="Dialog.NoTitleBar" parent="@android:style/Theme.Dialog">
        <item name="android:windowNoTitle">true</item>
    </style>
</resources>

然后,在您的AndroidManifest.xml 中,将此样式设置为android:theme

<activity
        android:name="MyActivity"
        android:theme="@style/Dialog.NoTitleBar" />

【讨论】:

    【解决方案2】:

    您不应该弹出警告对话框,并且应该对您的用户更加敏感。考虑使用通知: http://developer.android.com/guide/topics/ui/notifiers/notifications.html

    当您想要在后台任务之后启动活动时,通知也是推荐的中介。

    【讨论】:

    • 当用户点击通知时会出现 AlertDialog。
    【解决方案3】:

    您可以尝试将AlertDialog 放入Service(即class MyAlertService extends Service)中,然后启动该服务而不是整个Activity

    This site 有很好的例子来使用你自己的Service。在您的情况下,您只需将警报对话框代码放在 Service 类的 onStart 方法中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-04
      相关资源
      最近更新 更多