1

在测试以下步骤时,我的 DialogFragment 子类遇到了奇怪的、可能是特定于版本的行为:

(1) 打开对话框
(2) 使用 Home 键或Recent Apps 键离开应用程序
(3) 返回应用程序,对话框不再可见。它似乎在主要活动背后是短暂的、半透明的。
(4) 旋转设备,对话框重新出现。

此错误发生在我运行 Android 4.2.1 的 Asus TF700T 平板电脑上,而我运行 Android 4.1.2 的 Motorola Razr 手机(它有一个菜单键而不是溢出按钮)上不会出现此错误。此外,只有通过溢出菜单打开对话框时才会出现这种情况 - 通过 ActionBar 项打开的对话框不会出现此问题!最后,如果您在暂停活动之前更改方向,则不会出现此问题。

我发现了一个非常相似的问题,其中包括令人沮丧的评论,例如“这显然是一个 Android 错误”。有相关的错误报告。请说不是这样...

我对这个问题的解决方法是在 onResume() 中:我使用 findFragmentByTag 检查 FragmentManager 是否存在现有对话框;如果有任何不为空,我会解雇并重新展示它们。但我想了解这里到底发生了什么。

4

1 回答 1

0

我想这个问题的答案是上面链接的谷歌错误报告。我改变了我的设计以避免这个问题,所以我没有尝试过那里有人发布的解决方法。

于 2013-09-15T05:55:51.000 回答