ViewPager即时刷新android

时间:2018-03-13 08:54:32

标签: android android-viewpager

我有一个ViewPager,它的子片段是动态的。我在相同的片段类中使用它们,我正在动态地更改字段的值。但是当我更改ViewPager位置时,它不会更新片段。我必须立即更改值。

谢谢。

2 个答案:

答案 0 :(得分:0)

在片段类中声明refreshFragment方法然后

ViewPagerAdapter类覆盖方法

@Override
    public int getItemPosition(@NonNull Object object) {
       MyFragment f = (MyFragment ) object;
        if (f != null) {
           f.refreshFragment();
        }
        return super.getItemPosition(object);
    }

致电时

viewPagerAdapter.notifyDataSetChanged();

它将在适配器类中调用getItemPosition方法并使用refreshFragment方法更新您的片段。

答案 1 :(得分:0)

Android默认情况下会在当前页面的两侧保留一页以优化加载。由于您每次都需要刷新页面,因此您需要使用viewpager.setOffScreenPageLimit(0)设置每次查看时重新创建的页面