1

我有一个使用 .replace() 管理大量片段的活动。使用后退按钮时出现问题。这是一个解释:

Activity 添加 f1 -> f1 被 f2 替换(添加到 backstack) -> f2 被 f3 替换(不添加 backstack)

按下返回按钮

f1 出现单击按钮将 f1 替换为 f2,f1 和 f2 都在屏幕上 - 重叠

关于这个问题,我看了很多问答,这就是我发现的:当f1被f2替换时,事务被添加到backstack中。因此,当单击返回时,它会删除 f2 并添加 f1。但是,f2 已被替换,因此无法删除。

我不确定这是否是我的问题,因为当我单击返回时,似乎 f3 正在被删除。

关于如何解决这个问题的任何想法?

谢谢!

编辑:有什么想法吗?如果有帮助,我可以提供更多信息

编辑:刚刚测试了将所有事务添加到backstack,并多次单击返回返回f1,问题就消失了。所以看起来这就是问题所在。我将如何解决它?

4

0 回答 0