Tip:此方式可以实现页面切换

1. 创建view1.xml,view2.xml,view3.xml,main.xml

在main.xml中创建

<android.support.v4.view.ViewPager

android:id="@+id/pager"

android:layout_width="wrap_content"

android:layout_height="wrap_content">

</android.support.v4.view.ViewPager>

2. 创建MainActivity.java

public class MainActivity extends Activity {

private List<View>viewList;[s1]

private ViewPager Pager;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

viewList=new ArrayList<View>();

Pager=(ViewPager) findViewById(R.id.pager);[s2]

//将布局转化为视图

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);[s3]

viewList.add(view1);

viewList.add(view2);

viewList.add(view3);[s4]

//创建PagerAdapter适配器

MyViewPagerAdapter adapter=new MyViewPagerAdapter(viewList);

//ViewPager加载适配器

Pager.setAdapter(adapter);

}

}

3. 创建适配器MyViewPagerAdapter.java

public class MyViewPagerAdapter extends PagerAdapter {

private List<View>viewList;[s5]

public MyViewPagerAdapter(List<View> viewList)

{

this.viewList=viewList;

}[s6]

@Override

public int getCount() {

//返回页卡的数量

return viewList.size();

}

@Override

public boolean isViewFromObject(View arg0, Object arg1) {

// View是否来自于对象

return arg0==arg1;

}

@Override

public Object instantiateItem(ViewGroup container, int position) {[s7]

// 实例化一个页卡

container.addView(viewList.get(position));

return viewList.get(position);

}

@Override

public void destroyItem(ViewGroup container, int position, Object object) {[s8]

//销毁一个页卡

container.removeView(viewList.get(position));

}[s9]


[s1]创建集合List,泛型为View

[s2]控件实例化

[s3]将布局转换为视图

[s4]添加到集合

[s5]声明List集合

[s6]创建构造方法,用于接收传来的集合

[s7]实例化页卡

[s8]销毁页卡

[s9]新增的两个方法

Android成长日记-使用PagerAdapter实现页面切换的更多相关文章

  1. Android成长日记-使用ViewFlipper实现屏幕切换动画效果

    (一) ViewFlipper介绍 Android系统自带的一个多页面管理控件,它可以实现子界面的自动切换 (二) 为ViewFlipper加入View 1. 静态导入:在Layout布局文件中直接导 ...

  2. Android成长日记-使用Intent实现页面跳转

    Intent:可以理解为信使(意图),由Intent来协助完成Android各个组件之间的通讯 Intent实现页面之间的跳转 1->startActivity(intent) 2->st ...

  3. Android中使用ViewPager实现屏幕页面切换和页面切换效果

    之前关于如何实现屏幕页面切换,写过一篇博文<Android中使用ViewFlipper实现屏幕切换>,相比ViewFlipper,ViewPager更适用复杂的视图切换,而且Viewpag ...

  4. Android开发之ViewPager实现多页面切换及动画效果(仿Android的Launcher效果)

    Android开发中经常会有引导页或者切换页面等效果,本文采用ViewPager结合动画效果来实现仿Launcher以及页面切换的效果.源码地址在文章最后给出下载. 效果图如下:       1.Vi ...

  5. Android中使用ViewFlipper实现屏幕页面切换(关于坐标轴的问题已补充更改)

    屏幕切换指的是在同一个Activity内屏幕间的切换,ViewFlipper继承了Framelayout类,ViewAnimator类的作用是为FrameLayout里面的View切换提供动画效果.如 ...

  6. Android成长日记-ViewPager的使用

    ViewPager在安卓应用中主要用于作为程序的引导页面,欢迎页面,以及其他的动画效果,下面将给你讲述ViewPager的使用 在Android3.0以上的Api中,提供了ViewPager的接口,所 ...

  7. Android成长日记-ProgressBar的设计

    ProgressBar的关键属性 Android:max=”100” - ---最大显示进度 Android:progress=”50”----第一显示进度 Android:secondaryProg ...

  8. Android成长日记-Android四大组件之Service组件的学习

    1.什么是Service? Service是Android四大组件中与Activity最相似的组件,它们都代表可执行的程序,Service与Activity的区别在于:Service一直在后台运行,它 ...

  9. Android成长日记-数据存储之SQLite[1]

    [SQLite简介] SQLite是R.Richard Hipp用C语言编写的开源嵌入式数据库引擎.它支持大多数的SQL92标准,并且可以在所有主要的操作系统上运行 ---支持高达2TB大小的数据库: ...

随机推荐

  1. OmniPlan文档链接

    https://support.omnigroup.com/documentation/omniplan/mac/3.0/zh/introduction/#introduction

  2. mac上如何卸载oracle jdk 1.7

    目前mac上有一些软件还不支持jdk1.7,只能卸载1.7,恢复到1.6,下面二个链接是官网给出的卸载方法: http://www.java.com/zh_CN/download/help/mac_u ...

  3. [MetaHook] GameUI hook

    Hook GameUI function. #include <metahook.h> #include <IGameUI.h> IGameUI *g_pGameUI = ; ...

  4. EF下泛型分页方法,更新方法

    /// <summary> /// 获取分页的分页集合 /// </summary> /// <typeparam name="S">实体类型& ...

  5. 【跟着子迟品underscore】从用 `void 0` 代替 `undefined` 说起

    Why underscore 最近开始看 underscore源码,并将 underscore源码解读 放在了我的 2016计划 中. 阅读一些著名框架类库的源码,就好像和一个个大师对话,你会学到很多 ...

  6. 对《重建中国.NET生态系统》评论贴的总结

    Neuzilla官方微信公众号:搜 架构师联盟 或 neuzilla,也可以扫下面二维码 在看了<重建中国.NET生态系统>的各种哭爹喊娘骂街的评论之后,我觉得哦,淫才确实很多,但是么真正 ...

  7. 【监控】WebServer入库与缓存更新代码优化小计

    问题描述: 通过WebServer将监控数据入库到Hbase,在入库之前需要将指标与ip的列表更新到缓存中,以便前台页面随时选择查看.前两天上了一些新用户导致负载增加,逐渐发现某些用户的监控场景出现丢 ...

  8. DTCMS插件的制作实例电子资源管理(二)Admin后台页面编写

    总目录 插件目录结构(一) Admin后台页面编写(二) 前台模板页编写(三) URL重写(四) 本实例旨在以一个实际的项目中的例子来介绍如何在dtcms中制作插件,本系列文章非入门教程,部分逻辑实现 ...

  9. .net 估计要死在你手里了

    最近不太爽,想换工作,上这些知名的招聘网站,一搜 .net 心凉了一截,很少有大公司用.net,工资也不是很高. 不用我多说什么,想必很多人应该有类似经历,只是打了牙往肚子里咽. 来两副图: 最近用滴 ...

  10. 文本 To 音频

    文本  To  音频 TextToSpeech介绍 TextToSpeech,简称 TTS,是Android 1.6版本中比较重要的新功能.将所指定的文本转成不同语言音频输出.它可以方便的嵌入到游戏或 ...