如何使用viewpager和fragmentStatePager Adapter创建轮播

时间:2013-07-08 05:26:10

标签: android carousel fragmentstatepageradapter infinite-carousel listview-adapter

我是android的新手,我正在尝试在android中创建一个旋转木马。 我的班级结构如下

public class PageViewActivity extends FragmentActivity {

    ViewPager pager;
    ...

    public void onCreate(Bundle savedInstanceState) {
       final ViewPager pager = (ViewPager) findViewById(R.id.pager);
       MyPageAdapter pageAdapter = new MyPageAdapter(getSupportFragmentManager(),getBaseContext());
       pager.setAdapter(pageAdapter);
    }

...

public class MyPageAdapter extends FragmentStatePagerAdapter {

    @Override
    public ImageFragment getItem(int position) {
       ...
       return fragment;
    }

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

现在我的程序工作正常,我可以通过向左或向右滑动来获取10个可以访问的片段。但我希望将这10个片段显示为轮播,以便用户更好地了解当前位置的左侧或右侧有更多碎片。

有人可以告诉我我该怎么做。

我确实找到了这个网址ViewPager carousel using PageContainer not working with FragmentPagerAdapter,但对于像我这样的初学者来说,没有太多信息。

3 个答案:

答案 0 :(得分:5)

对于遇到此问题的其他人,我使用此代码来实现非常好的效果。

driver = Driver.new
car.driver = driver

答案 1 :(得分:1)

您可以从Gamma开发者指南中获取帮助以制作旋转木马。

以下是link

答案 2 :(得分:0)

嘿,不确定这是否是一个合适的解决方案,但我只是添加了一行

 pager.setPageMargin(getResources().getDisplayMetrics().widthPixels /-7);

现在我的视图显示了左右片段的一部分