android - 应用程序在后台时关闭 DialogFragment 的正确方法

标签 android android-fragments android-dialog android-dialogfragment

我开始使用 DialogFragment,因为它们可以通过方向变化和其他东西很好地工作。但是我遇到了一个讨厌的问题。

我有 AsyncTask 显示进度 DialogFragment 并将其关闭 onPostExecute。一切正常,除非在应用程序处于后台时发生 onPostExecute (例如,在按下 Home 按钮之后)。然后我在 DialogFragment 关闭时收到此错误 - “在 onSaveInstanceState 之后无法执行此操作”。多哈。常规对话框工作得很好。但不是 FragmentDialog。

所以我想知道,当应用程序在后台时关闭 DialogFragment 的正确方法是什么?我并没有真正使用过 Fragments,所以我认为我只是错过了一些东西。

最佳答案

DialogFragment 有一个名为 dismissAllowingStateLoss()

的方法

关于android - 应用程序在后台时关闭 DialogFragment 的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9325238/

相关文章:

java - 如何在选项卡顶部显示选项卡指示器

java - 如果android终止进程如何处理后按

安卓.view.WindowManager$BadTokenException : Unable to add window -- at Toast

android - 调用子 fragment 时找不到 id 的 View

android - 带有选择器的 AlertDialog

android - Eclipse DDMS 网络统计为空

android - onOptionsItemSelected 未从 fragment 主详细信息 View 调用

android - 如何在 recyclerview OnClick 上打开不同的 fragment

java - 自定义对话框执行 NPE

android - “ Material ”与 'MaterialComponents'