安卓 ViewPager-快速入门

栏目: IOS · Android · 发布时间: 5年前

内容简介:新建一个 Activity,这会自动创建一个 Java 文件和一个布局文件。布局文件中放一个 android.support.v4.view.ViewPager。

一、需要什么?

  • 一个 Activity(即一个 Java 文件、一个布局文件)
  • 一个继承自 PagerAdapter 的类(Java 文件)
  • N 个页面的布局文件

二、一个 Activity(即一个 Java 文件、一个布局文件)

新建一个 Activity,这会自动创建一个 Java 文件和一个布局文件。布局文件中放一个 android.support.v4.view.ViewPager。

Java 文件中在 onCreate 中放置如下代码:

ViewPager viewPager = (ViewPager)findViewById(R.id.viewPager);
viewPager.setAdapter(new MyPagerAdapter(this));

其中 MyPagerAdapter 下面即将介绍到。

三、一个继承自 PagerAdapter 的类(Java 文件)

public class MyPagerAdapter extends PagerAdapter {
    private Context mContext;

    public MyPagerAdapter(Context context) { // 构造函数可自定义参数
        mContext = context;
    }

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

    @Override
    public Object instantiateItem(ViewGroup container, int position) {
        if (position == 0) {
            View view = View.inflate(mContext, R.layout.page_1, null);
            container.addView(view);
            return view;
        }
        else if (position == 1) {
            View view = View.inflate(mContext, R.layout.page_2, null);
            container.addView(view);
            return view;
        }
        else {
            return null;
        }
    }

    @Override
    public void destroyItem(ViewGroup container, int position, Object object) {
        super.destroyItem(container,position,object);
        // container.removeView((View)object);
    }

    @Override
    public boolean isViewFromObject(View view, Object object) {
        return view == object;
    }
}

四、N 个页面的布局文件

前面示例讲了两个页面:page_1、page_2,所以我们还需要做这么两个布局文件。

总结:为 ViewPager 设置一个 PagerAdapter,这个 PagerAdapter 去呈现各个布局。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

C++沉思录

C++沉思录

Andrew Koenig、Barbara Moo / 黄晓春、孟岩(审校) / 人民邮电出版社 / 2008-1 / 55.00元

《C++沉思录》基于作者在知名技术杂志发表的技术文章、世界各地发表的演讲以及斯坦福大学的课程讲义整理、写作而成,融聚了作者10多年C++程序生涯的真知灼见。全书分为6篇32章,分别对C++语言的历史和特点、类和继承、STL与泛型编程、库的设计等几大技术话题进行了详细而深入的讨论,细微之处几乎涵盖了C++所有的设计思想和技术细节。全书通过精心挑选的实例,向读者传达先进的程序设计的方法和理念。一起来看看 《C++沉思录》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具