片段onStart已激活,但不在当前片段中

时间:2019-11-18 02:33:19

标签: java android fragment

我有使用4个片段的TabLayout,分别为a1,a2,a3,a4, 问题是当我输入a1片段时,a2片段也被激活,而当我进入a2片段时,它已经被激活了,这看起来像是=> a1(Entered> Activated)-a2(Activated)-a3(Not Activated)-a4 (未激活) 另一种情况: a1(未激活)-a2(已激活)-a3(Entered>已激活)-a4(已激活) 很难解释,我认为我的代码运行正常,为什么我会遇到这样的问题,如何解决?

2 个答案:

答案 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时,与所选片段相邻的两个片段也会被激活。