在特定片段上启动Android应用

时间:2016-03-09 14:41:56

标签: android android-fragments

我有一个使用SectionsPagerAdapter显示活动中3个片段的应用程序(此部分是在选择标签式活动后由Android Studio自动生成的)。现在,这是我选择要显示的片段的方式:

public class SectionsPagerAdapter extends FragmentPagerAdapter {

        public SectionsPagerAdapter(FragmentManager fm) {
            super(fm);
        }

        @Override
        public Fragment getItem(int position) {
            if (position == 0) {
                return new Fragment1();
            } else if (position == 1) {
                return new Fragment2();
            } else {
                return new Fragment3();
            }
        }

        @Override
        public int getCount() {
            return 3;
        }
}

我希望我的应用程序从片段2开始(即position 1),以允许用户向右滑动以返回到第一个片段,或者向左滑动以继续前进到下一个片段。

如何设置开始的位置?我找不到任何设置位置编号的方法,是否有一个或者我应该采用另一种方式?

如果有帮助,这是我的onCreateView课程的MainActivity方法:

public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
            View rootView = inflater.inflate(R.layout.fragment_main, container, false);
            return rootView;
        }

2 个答案:

答案 0 :(得分:1)

  

如何设置开始位置?

致电setCurrentItem() on the ViewPager

答案 1 :(得分:1)

我认为活动没有onCreateView方法。它是一种片段的方法。您的活动将有public void onCreate(Bundle savedInstanceState)

如果我的假设没有错误,在主要活动的布局中你将有一个android.support.v4.view.ViewPager。

在您的代码中,您可以声明您的view pager变量并将SectionsPagerAdapter设置为它。之后只需viewPager.setCurrentItem(1);