簡體   English   中英

獲取一個打開的Dialog,沒有任何引用它

[英]Get a open Dialog without having any references to it

在Android上,如果我在屏幕上添加了一個Dialog並打開了另一個Activity,那么如何從該Activity中獲取所有打開的Dialog?

我需要關閉其中一個。

您應該創建一個類並擴展DialogFragment並在onCreateDialog返回您的對話框,然后顯示帶有特定標記的對話框片段,之后,您可以使用activity.getFragmentManager().findFragmentByTag("the tag")找到此對話框。

不要對對話框(本地或全局)進行引用,因為活動可以重新創建並且它會泄漏內存中的引用,只需使用findFragment方法獲取引用。

如果您在片段中,則可以使用fragment.getChildFragmentManager(...)並執行相同操作。 祝好運!

當另一個活動打開時,您當前的活動將通過onPause()狀態。 有關它的更多信息可以在這里找到。

在onPause()調用dialog.dismiss()中你應該設置。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM