如何使用viewpager和fragmentStatePager适配器创建轮播 [英] How to create a carousel using viewpager and fragmentStatePager Adapter

查看:382
本文介绍了如何使用viewpager和fragmentStatePager适配器创建轮播的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是android的新手,我正在尝试在android中创建轮播. 我的课程结构如下

I am new to android and i am trying to create a carousel in android. My class structure are as follows

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个片段显示为轮播,以便用户更好地了解当前位置的左侧或右侧还有更多片段.

Now my program is working correctly and I am able to put get 10 fragments which I can access by swiping left or right. But I want to show these 10 fragments as a carousel so that the user has a better idea that there are more fragments left or right of the current position.

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

Can someone please tell me how can I do it.

我确实找到了该网址使用PageContainer的ViewPager轮播无法与FragmentPagerAdapter一起使用,但是对于像我这样的初学者来说,信息不多.

I did found this url ViewPager carousel using PageContainer not working with FragmentPagerAdapter but there is not much information for a beginner like me.

推荐答案

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

Hey not sure whether it is a proper solution or not but i just added one line

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

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

and now my view shows a portion of the left and right fragments also

这篇关于如何使用viewpager和fragmentStatePager适配器创建轮播的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆