如何设置viewpager页面的顺序?

How to set order of viewpager pages?

所以我有一个 Viewpager class,它添加了 3 个片段,每个片段都有自己的布局。让我们称它们为 Layout/Fragment A、Layout/Fragment B 和 Layout/Fragment C。

ViewPager Class:

public class viewpagerMainPagesActivity extends FragmentActivity {
DescriptionPageAdapter pageAdapter;

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.viewpager_descriptionpages);

    List<Fragment> fragments = getFragments();
    pageAdapter = new DescriptionPageAdapter(getSupportFragmentManager(), fragments);
    ViewPager pager = (ViewPager)findViewById(R.id.viewpager_descriptionpages);
    pager.setAdapter(pageAdapter);

}
private List<Fragment> getFragments() {
    List<Fragment> fList = new ArrayList<Fragment>();
    fList.add(fragmentA.newInstance());
    fList.add(fragmentB.newInstance());
    fList.add(fragmentC.newInstance());

    return fList;
}
}

现在,当我调用这个 ViewPager class 时,它会按照添加的顺序显示它们,也就是说,它会打开 Fragment A。它是 FragmentA 作为第一个屏幕,当你滑动到 FragmentB 时右侧(第 2 个屏幕),然后 FragmentC 作为右侧的最后一个屏幕。

A - B - C

但我想让 ViewPager 保持片段的这种顺序,但打开 FragmentB,这样用户就可以向右滑动到片段 A,或者向左滑动到片段 C。

任何人都可以指出正确的方向吗?

您可以通过调用来居中视图:

pager.setCurrentItem(1)//second index for zero based index

紧接在以下行之后:

pager.setAdapter(pageAdapter);