Android----ViewPager页面滑动基础--PagerAdapter篇(一)

本文详细介绍如何使用PagerAdapter实现Android应用中的页面滑动效果。主要包括:1. 在主布局文件中添加ViewPager组件;2. 初始化View集合并填充不同的布局;3. 创建自定义PagerAdapter类并重写关键方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用PagerAdapter去实现页面滑动效果

具体步骤可以分为三部:

一、创建4个布局(至少两个或者多个)准备实现滑动页面。在main.xml文件中,即主布局中要去添加:


    <android.support.v4.view.ViewPager
        android:id="@+id/pager"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center" >
    </android.support.v4.view.ViewPager>


注:这里标签过长不好记,可以先在Java文件中声明ViewPager,在其导入的包中有完整的名字。


二、在MainActivity中去声明Viewpager 和 List<View>viewList :

private ViewPager viewPager;
private List<View>viewList;

并且要初始化viewList:

viewList=new ArrayList<View>();

然后通过View对象去作为ViewPager的数据源

View view1=View.inflate(this,R.layout.view1,null);
View view2=View.inflate(this,R.layout.view2,null);
View view3=View.inflate(this,R.layout.view3,null);
View view4=View.inflate(this,R.layout.view4,null);

   最后添加到viewList中去

viewList.add(view1);
viewList.add(view2);
viewList.add(view3);
viewList.add(view4);

三、创建MyPagerAdapter类去继承PagerAdapter,添加一个构造方法并重写里面的四个方法


public class MyPagerAdapter extends PagerAdapter{

private List<View> viewList;//声明一个List<View>


public MyPagerAdapter(List<View>viewList) {
// TODO Auto-generated constructor stub
this.viewList=viewList;//把从MainActivity中的viewList代入,重新赋值给viewList(本类中声明的)
}

/**
* 返回的是页卡的数量
*/
@Override
public int getCount() {
// TODO Auto-generated method stub
return viewList.size();
}


/**
* View是否来自于对象
*/
@Override
public boolean isViewFromObject(View arg0, Object arg1) {
// TODO Auto-generated method stub
return arg0==arg1;
}


/**
* 实例化一个页卡
*/
@Override
public Object instantiateItem(ViewGroup container, int position) {
// TODO Auto-generated method stub
container.addView(viewList.get(position));
return viewList.get(position);
}

/**
* 销毁一个页卡
*/
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
// TODO Auto-generated method stub
container.removeView(viewList.get(position));
}
}

剩下的四个方法的重写基本上都是固定的。

最后,在MainActivity中加载PagerAdapter适配器

//初始化ViewPager
viewPager=(ViewPager) findViewById(R.id.pager);
// 创建PagerAdapter的适配器
MyPagerAdapter adapter=new MyPagerAdapter(viewList);
//viewPager加载适配器
viewPager.setAdapter(adapter);


      

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值