ViewPager和Fragments的示例/教程

时间:2013-02-25 17:19:51

标签: android android-viewpager

我正在寻找一个通过ViewPager / PageIndicator使用Fragments的简短示例。 我找到的所有教程/示例都提供了对生成的文本或图像的精确解释,这些文本或图像传递给单个片段。

有没有人可以提供一个简短的例子,只有2个独立的片段(包括xml-layout-part)。

指向示例或教程的链接也没问题! : - )

2 个答案:

答案 0 :(得分:5)

在将承载片段的MainActivity中,您需要创建片段适配器类,在getItem()方法中,您将返回片段的新实例。看一下这个例子:

public class MainActivity extends FragmentActivity {

static int numberOfPages = 2;
ViewPager myViewPager;
MyFragmentPagerAdapter myFragmentPagerAdapter;
    String text = "test";

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main_activity);

    myViewPager = (ViewPager) findViewById(R.id.view_pager);
    myFragmentPagerAdapter = new MyFragmentPagerAdapter(getSupportFragmentManager());
    myViewPager.setAdapter(myFragmentPagerAdapter);
}

// Adapters
private static class MyFragmentPagerAdapter extends FragmentPagerAdapter {
    public MyFragmentPagerAdapter(FragmentManager fm)   {
        super(fm);
    }

    @Override
    public Fragment getItem(int index) {

        return PageFragment.newInstance(text);
    }

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

}

//片段类

public class PageFragment extends Fragment {

TextView tv;

public static PageFragment newInstance(String text) {
    PageFragment pageFragment = new PageFragment();
    Bundle bundle = new Bundle();
    bundle.putString("test", text);
    pageFragment.setArguments(bundle);

    return pageFragment;
}

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
}

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)   {
    View view = inflater.inflate(R.layout.fragment, container, false);
    tv = (TextView) view.findViewById(R.id.tv);
    tv.setText(getArguments().getString("test");        

    return view;
}

答案 1 :(得分:4)

Open Eclipse - >新的Android应用程序项目 - >按下一步 - >输入应用程序名称,并在最小sdk中选择4.0以上的任何内容 - >按“下一步”3次

在导航类型的新空白活动中选择“滑动视图+标题条” - >光洁度

这是ViewPager的非常好的简单示例。