gpt4 book ai didi

android - 当我的应用程序多次最小化时,不会调用 Fragment onPause()

转载 作者:行者123 更新时间:2023-11-29 23:40:03 24 4
gpt4 key购买 nike

我在 ViewPager 中有 fragment 。当我最小化应用程序时,它会在 ViewPager 内的 fragment 上调用 ​​onPause(),然后当我恢复应用程序时,它会调用 onResume()。但是当我再次最小化它时,onPause() 不再被调用。
你有什么想法吗?

最佳答案

我想我已经找到问题的原因了。在父 fragment 的 onStop() 中,他们放置了这段代码:

try {
Field childFragmentManager = Fragment.class
.getDeclaredField("mChildFragmentManager");
childFragmentManager.setAccessible(true);
childFragmentManager.set(this, null);
} catch (NoSuchFieldException e) {
throw new RuntimeException(e);
} catch (IllegalAccessException e) {
throw new RuntimeException(e);
}

我不知道这样做的目的,但它似乎是解决支持嵌套 fragment 的错误的方法。 Getting the error "Java.lang.IllegalStateException Activity has been destroyed" when using tabs with ViewPager

在上面的链接中,建议在onDetach() 上添加这段代码。但是他们似乎错误地将它放在了 onStop() 上。

当我将上面的代码转移到onDetach()时,现在子 fragment 的生命周期没有问题了。

这很可怕,因为我只是支持这个项目,而我并不是最初创建它的人。我只是希望这不会有任何副作用。非常感谢所有给出答案/建议的人。我很感激。 :)

关于android - 当我的应用程序多次最小化时,不会调用 Fragment onPause(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51961123/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com