繁体   English   中英

在特定片段上启动Android应用

[英]Launch Android app on specific fragment

我有一个使用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 )开始,以允许用户向右轻扫以返回第一个片段,或者向左轻扫以继续移动到下一个片段。

如何设置起始位置? 我找不到设置位置编号的任何方法,是否应该使用另一种方法?

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

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

如何设置起始位置?

ViewPager调用setCurrentItem()

我不认为Activity具有onCreateView方法。 它是片段的方法。 您的活动将在public void onCreate(Bundle savedInstanceState)

如果我的假设没有错,那么在您的主要活动的布局中,您将拥有android.support.v4.view.ViewPager。

在代码中,您可以声明视图分页器变量并将SectionsPagerAdapter设置为该变量。 之后,只需执行viewPager.setCurrentItem(1);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM