3

在 Android 上,如果我在屏幕中添加了一个 Dialog 并打开了另一个 Activity,我如何从该 Activity 中获取所有打开的 Dialogs?

我需要关闭其中一个。

4

2 回答 2

1

您应该创建一个类并扩展DialogFragmentonCreateDialog返回您的对话框,然后使用特定标签显示此对话框片段,之后,您可以使用activity.getFragmentManager().findFragmentByTag("the tag").

不要持有对您的对话框(本地或全局)的引用,因为可以重新创建活动并且它会泄漏内存中的引用,只需使用 findFragment 方法获取引用即可。

如果你在一个片段中,你可以使用fragment.getChildFragmentManager(...)并做同样的事情。祝你好运!

于 2016-10-31T14:46:19.640 回答
-1

当另一个活动打开时,您当前的活动将进入 onPause() 状态。更多信息可以在这里找到。

在 onPause() 调用 dialog.dismiss() 中,您应该进行设置。

于 2011-09-19T21:44:19.410 回答