@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
super.setUserVisibleHint(isVisibleToUser);
if (getUserVisibleHint()) {
isVisible = true;
onVisible();
} else {
isVisible = false;
onInVisible();
}
}
我发现这部分代码没有执行。
原文由 limengxin 发布,翻译遵循 CC BY-SA 4.0 许可协议
他们只是更改了 Fragments 中的 API。
如果您使用此方法来限制片段生命周期:
资料来源: https ://developer.android.com/jetpack/androidx/releases/fragment#1.1.0-alpha07。
如果您需要此方法,因为您尝试检测哪个片段当前在
ViewPager
中可见。您现在可以只使用onResume
和onPause
方法,但在此之前,您应该更改FragmentPagerAdapter
构造函数中的默认行为。像这样:
编辑:因为
FragmentPagerAdapter
也已弃用,所以现在最好使用 ViewPager2 。在ViewPager2
的情况下,这是默认行为,我们可以使用onResume
和onPause
方法来了解当前可见的片段。