Android Studio创建ViewPager

Android Studio创建ViewPager,android,android-viewpager,Android,Android Viewpager,我在MainActivity上有一个按钮,可以打开SecondActivity。我的第二个活动是一个ViewPager,我还有两个片段类(fragment1、fragment2)和两个片段xml,每个类内部都有一个文本视图。我无法确定如何使用FragmentPagerAdapter将这两个片段放在ViewPage中,因此我可以从一个片段滑动到另一个片段。谁能给我看看/帮我一下吗 主要活动 Button button1 = (Button) findViewById(R.id.bu

我在MainActivity上有一个按钮,可以打开SecondActivity。我的第二个活动是一个ViewPager,我还有两个片段类(fragment1、fragment2)和两个片段xml,每个类内部都有一个文本视图。我无法确定如何使用FragmentPagerAdapter将这两个片段放在ViewPage中,因此我可以从一个片段滑动到另一个片段。谁能给我看看/帮我一下吗

主要活动

        Button button1 = (Button) findViewById(R.id.buttonCreateWorkout);
        button1.setOnClickListener(new View.OnClickListener() {
        public void onClick(View arg0) {
            startActivity(new Intent(MainActivity.this, SecondActivity.class));

        }
second_activity.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">


    <android.support.v4.view.ViewPager
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/pager"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

    //
    //how do i add the two fragments here?
    //if this is even the right place
    //

    </android.support.v4.view.ViewPager>
</LinearLayout>

//
//如何在这里添加这两个片段?
//如果这是正确的地方
//

另外,您能告诉我如何使用FragmentPagerAdapter在2个片段之间切换吗?

不要在de viewpager xml标记中添加片段,您可以按代码添加片段。FragmentPagerAdapter处理此问题。您应该按照本教程进行正确的实施:

PagerFragmentAdapter应如下所示,此适配器处理片段创建和切换片段:

public class DemoCollectionPagerAdapter extends FragmentStatePagerAdapter {
public DemoCollectionPagerAdapter(FragmentManager fm) {
    super(fm);
}

@Override
public Fragment getItem(int i) {
    Fragment fragment = new DemoObjectFragment();
    Bundle args = new Bundle();
    // Our object is just an integer :-P
    args.putInt(DemoObjectFragment.ARG_OBJECT, i + 1);
    fragment.setArguments(args);
    return fragment;
}

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

@Override
public CharSequence getPageTitle(int position) {
    return "OBJECT " + (position + 1);
}
}

在getItem方法中,根据索引的值创建片段。

检查此示例