Android:如何从后台线程弹出AlertDialog

7

在我的 Activity 中有一些后台线程正在运行,它是在 Activity_1 中启动的。 后台线程的处理需要一段时间,我想通过 AlertDialog 在完成后通知用户。 但是,在此期间用户可能已经切换到了 Activity_2 或 Activity_3,我希望始终在当前活动中弹出 AlertDialog。

有什么想法可以实现这一点吗?

2个回答

3

我在后台线程中做了类似于这样的事情。它能够工作,但是不确定它是否是一个“好”的解决方案。

Looper.prepare();
mActivity.showDialogAlertDefault();
Looper.loop();
Looper.myLooper().quit();

这对我也起作用了,但是,在alertdialog出现后,它似乎知道返回执行先前出现alertdialog的线程。有什么建议吗?想看看我的代码吗? - prolink007

0

这可能意味着正确的方法是使用服务而不是普通的后台线程。您的后台工作将更具弹性,以便在暂停或关闭时不会中断,并且您无需担心创建一个始终跟踪不同活动父级的AsyncTask。


我的“后台线程”实际上是一个独立的服务。但我正在寻找的是一个应用程序全局消息(对话框),可以在应用程序的任何地方引发。这是否意味着我必须在每个活动中实现一个监听器和对话框,还是可以在整个应用程序的一个单一点上完成?另一个问题是,我要监听什么(是Intent还是其他东西)? - znq

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接