4

我想在活动上显示一个对话框,但在显示对话框时仍想与后台活动交互以执行某些操作。如何才能做到这一点?

4

4 回答 4

1

你可以开始一个新Thread的来执行这个动作。我建议实施一个AsyncTask

这是一个很好的教程来实现这些东西。

于 2013-05-22T21:35:24.127 回答
1

使用DialogFragment,这是一个显示对话窗口的片段,浮动在其活动窗口的顶部。该片段包含一个 Dialog 对象,它会根据片段的状态适当地显示该对象。对话框的控制(决定何时显示、隐藏、关闭它)应该通过这里的 API 来完成,而不是直接调用对话框,所以你的 Activity 仍然处于控制之中。

于 2013-05-22T21:41:03.173 回答
0

ADialog仍然是相同的部分Activity。他们只是使用不同的窗口。
由于您还没有发布任何代码,我理论上会回答您,在构建 you 时Dialog,您应该保留对Activity持有它的引用。这样你仍然可以与它通信。

于 2013-05-22T21:37:35.670 回答
0

对于这个问题,我找到了一个非常巧妙的解决方法。如果您在所有内容之上放置一个透明视图,您可以实现回调以将事件注入底层视图,但它不一定是事件,它可以是您想要在背景视图上执行的任何代码。我有一个开源库来演示这一点。如果你在https://bitbucket.org/warwick/hgdialrepo查看我的 repo,你会发现这个库带有一个演示应用程序。在此演示应用程序中,您将找到一个 cog 演示。如果您检查 cog 演示背后的代码,您将了解如何实现这一点。

于 2015-07-29T08:05:45.490 回答