ViewPager简单使用说明

首先来看谷歌官方API给出的使用场合的解释

Layout manager that allows the user to flip left and right through pages of data. You supply an implementation of aPagerAdapter to generate the pages that the view shows.

意思是这种布局可以允许用户左右滑动界面,前提你要实现PagerAdapter适配器去生成数据页面。


说明:ViewPager必须导入V4下的包

简单的步骤;使用v4包下的可左右滑动的控件,其显示的页面需要通过PagerAdapter适配器增加或移除页面


布局xml文件添加:

<android.support.v4.view.ViewPager
        android:id="@+id/viewPager"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        />
设置适配器:
        //实例化PagerAdapter适配器
        adapter=new WelcomePagerAdapter();
        
        //设置ViewPager的适配器
        vPager.setAdapter(adapter);
        
        //设置移除UI的间隔大小
        vPager.setOffscreenPageLimit(3); //默认为1,不能少于1,【建议】不要改变
适配器:

//声明PagerAdapter子类,用于管理ViewPager中显示的View控件
    class WelcomePagerAdapter extends PagerAdapter{
        @Override
        public int getCount() {
            // TODO 返回显示页面的总大小
            return views.size();
        }
        
        @Override
        public Object instantiateItem(ViewGroup container, int position) {
            // TODO 获取指定位置的View(UI)并增加到ViewPager中,同时作为当前页面的数据返回
            
            Log.d("debug", "instantiateItem---"+position);
            container.addView(views.get(position));
            return views.get(position); //作为当前页面的数据返回
        }
        
        @Override
        public void destroyItem(ViewGroup container, int position, Object object) {
            // TODO 当前位置与ViewPager中正显示页面的位置的间隔超出一页面,需要将当前位置的页面移除
            container.removeView(views.get(position));
            
            Log.d("debug", "destroyItem---"+position);
        }
        
        @Override
        public boolean isViewFromObject(View view, Object obj) {
            // TODO 判断当前显示的页面的UI对象和数据对象是否一致
            return view==obj;
        }
    }


类似的完整源码:http://download.csdn.net/detail/u010311220/9117279

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值