刷新片段在ViewPager内部



在我的示例中,在片段中有一个view pager,并且在View Pager中的选项卡被动态地板条。例如,为三个主题Sub 1Sub 2Sub 3的每个主题选项卡都有一些问题。现在我想要的是,当我从一个选项卡切换到另一个选项卡时,应该重新加载或刷新。

我有很多谷歌发现碎片是

Fragment currentFragment = getFragmentManager().findFragmentByTag("FRAGMENT");
FragmentTransaction fragTransaction = getFragmentManager().beginTransaction();
fragTransaction.detach(currentFragment);
fragTransaction.attach(currentFragment);
fragTransaction.commit();

所以这是刷新标签片段或任何建议的唯一方法?

从您的问题中可以很明显,您可以在第一次加载时可以正常工作。因此,加载的片段是为了刷新片段时,当用户滑动选项卡时,您可以覆盖在ViewPager中加载的片段中的setUserVisibleHint方法。

您可以做这样的事情:

@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
    if (isVisibleToUser){
        //This means this fragment is visible to user so you can write code to refresh the fragment here by reloaded the data. 
    }
}

注意:setuservisiblehint在oncreateview之前被调用,所以这将 第一次加载片段时不起作用。

最新更新