我有使用4个片段的TabLayout,分别为a1,a2,a3,a4, 问题是当我输入a1片段时,a2片段也被激活,而当我进入a2片段时,它已经被激活了,这看起来像是=> a1(Entered> Activated)-a2(Activated)-a3(Not Activated)-a4 (未激活) 另一种情况: a1(未激活)-a2(已激活)-a3(Entered>已激活)-a4(已激活) 很难解释,我认为我的代码运行正常,为什么我会遇到这样的问题,如何解决?
答案 0 :(得分:2)
覆盖setUserVisibleHint
来检查片段是否已激活
@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
super.setUserVisibleHint(isVisibleToUser);
if (isVisibleToUser) {
//this Fragment is visible
} else {
//this Fragment is invisible
}
}
答案 1 :(得分:1)
嗯,我看不出到底是什么错误。
代码正在正常工作。当您使用TabLayout时,与所选片段相邻的两个片段也会被激活。