如何从Fragment本身检索ViewPager的当前位置?

时间:2016-10-06 11:38:30

标签: android android-fragments android-viewpager

我创建了一个大约7000页的ViewPager。

此ViewPager是在我的" Holding Activity"这是ViewPagerHolderActivity。

在ViewPager中创建和显示的片段称为Fragment1,我希望能够从Fragment1的ViewPager获取当前位置,但是在执行应用程序时查看android监视器,片段是在ViewPager之前加载,那么我怎样才能从ViewPager中获取位置?

我尝试在我的片段的newInstance方法中插入参数,如下所示:

public  Fragment1 newInstance(int page){

    Fragment1 frag1 = new Fragment1();

    Bundle args = new Bundle();
    args.putInt("page",page);
    frag1.setArguments(args);

    return frag1;
}

然后在ViewPagerAdapter中:

@Override
public Fragment getItem(int position) {

    return frag1.newInstance(position);
}

当ViewPager的当前位置为3660时,片段中显示的位置为3661。

向左滑动时,ViewPager的当前位置为3659,但片段中的位置为3658。为什么会这样? 我可以看到,创建片段的Android监视器3实例,这可能是问题吗?有没有解决这个问题?

非常感谢解决方案。

0 个答案:

没有答案