6

假设我的 viewpager 中有两页,是否可以从第 2 页移动到第 1 页,但是这样做就像用户正在访问第 3 页(带有所有动画)

4

1 回答 1

4

您可以通过使用自定义的 FragmentPagerAdapter 来实现这一点,它一遍又一遍地提供相同的片段:

private class EndlessPagerAdapter extends FragmentPagerAdapter {

        private EndlessPagerAdapter(FragmentManager fm) {
            super(fm);
        }

        @Override
        public Fragment getItem(int position) {
            if (position % 2 == 0) {
                return fragmentOne;
            } else {
                return fragmentTwo;
            }
        }

        @Override
        public int getCount() {
            return Integer.MAX_VALUE;
        }
    }

为您的 ViewPager 设置适配器并从中间某处开始,以允许几乎无休止地向任一方向滑动:

mViewPager.setAdapter(new EndlessPagerAdapter(getChildFragmentManager()));
mViewPager.setCurrentItem(Integer.MAX_VALUE/2);
于 2017-07-19T15:02:17.010 回答