使用步骤

1、Activity的布局文件

android:id="@+id/viewpager"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_gravity="center" >

2、加载要显示的Fragment,这里要注意,导入的全部是

android.support.v4.app.Fragment,也就是v4兼容包下的Fragment类,至于为什么,看步骤3

Fragment1 f1 = new Fragment1();

Fragment2 f2 = new Fragment2();

Fragment3 f3 = new Fragment3();

fragmentContainter = new ArrayList();

fragmentContainter.add(f1);

fragmentContainter.add(f2);

fragmentContainter.add(f3);

3、用FragmentPagerAdapter关联上面的Fragment和ViewPager,

FragmentPagerAdapter (android.support.v4.app.FragmentPagerAdapter)

继承自 PagerAdapter。相比通用的 PagerAdapter,该类更专注于每一页均为 Fragment 的情况。我们只需要实现 getCount() 和 getItem()即可,从getItem()可以看出,它返回的是v4的Fragment,所以2中的问题答案就在这里了~~

pager.setAdapter(new FragmentPagerAdapter(getSupportFragmentManager())

{

@Override

public int getCount()

{

return fragmentContainter.size();

}

@Override

public android.support.v4.app.Fragment getItem(int arg0)

{

return fragmentContainter.get(arg0);

}

});

这样就可以实现滑动Fragment

重要的话

PageAdapter 是 FragmentPagerAdapter 以及 FragmentStatePagerAdapter 的基类,可以将上面的替换成FragmentStatePagerAdapter 。

FragmentStatePagerAdapter 和 FragmentPagerAdapter 的区别: FragmentPagerAdapter使用时,每一个生成的 Fragment 都将保存在内存之中,而 FragmentStatePagerAdapter 只保留了当前显示的Fragment,其他划过的Fragment离开视线后,就会被销毁;而在页面需要显示时,再生成新的实例(可以通过打印Fragment的生命周期来查看,这里就不粘贴了)。这么实现的好处就是当拥有大量的页面时,不必在内存中占用大量的内存。

android中viewpager+fragment,Android开发之ViewPager+Fragment相关推荐

  1. Android开发之ViewPager+ActionBar+Fragment实现响应式可滑动Tab

    今天我们要实现的这个效果呢,在Android的应用中十分地常见,我们可以看到下面两张图,无论是系统内置的联系人应用,还是AnyView的阅读器应用,我们总能找到这样的影子,当我们滑动屏幕时,Tab可以 ...

  2. Android开发之ViewPager结合Fragment实现滑动页面的效果(源代码分享)

    前段日子的博客有介绍过关于ViewPager的使用,发现大家对那篇博客都情有独钟,今天我们就在来看一下ViewPager在Fragment中的使用吧,因为ViewPager是在补丁包中添加的低版本的包 ...

  3. Android开发之ViewPager滑动页面效果实现(源代码分享)

    我们先来谷歌官方文档对viewpager的介绍,该类允许用户通过页面翻转左右的数据,需要通过实现PagerAdapter适配器来生成视图显示的页面.因为注意这个类是早期设计和开发的,API可能会改变, ...

  4. Android移动应用开发之Viewpage2+fragment实现微信滑动界面的效果

    文章目录 布局 viewpager2 fragment adapter 实现的效果如下: 滑动界面能够实现界面的跳转. 点击下面按钮同样实现界面的跳转. 布局 最下面的导航栏,单独写了个布局文件: & ...

  5. android中oncreate方法,android开发之onCreate( )方法详解

    这里我们只关注一句话:This is where you should do all of your normal static set up.其中我们只关注normal static, normal ...

  6. Android开发之在Fragment和Activity页面拍照需要注意的地方

    先贴出Google官方文档:Google官方拍照文档 感觉讲的不是很细,有不少坑. 先看需要配置权限和provider <!--拍照存储权限--><uses-permissionan ...

  7. android中base64加密,Android应用开发之android自带Base64加密解密

    本文将带你了解Android应用开发之android自带Base64加密解密,希望本文对大家学Android有所帮助. android项目引用不到以下两个java类 import sun.misc.B ...

  8. android 判断byte值_Android开发之UDP可靠性传输

    轩羽:Android开发之UDP​zhuanlan.zhihu.com 在这一篇文章里,小编说到UDP是不可靠的,故,我们要自己写一套协议,来使UDP实现可靠性传输,这里,小编和小编的小伙伴一起,写了 ...

  9. android蓝牙4.0(BLE)开发之ibeacon初步

    一个april beacon里携带的信息如下 ? 1 <code class=" hljs ">0201061AFF4C0002159069BDB88C11416BAC ...

  10. 慕课大学基于Android P 的移动应用开发之第6章ListView

    1.自定义BaseAdapter适配ListView 1创建布局文件 <?xml version="1.0" encoding="utf-8"?> ...

最新文章

  1. 0基础学python难吗-0基础学武汉Python开发课程有多难?该怎么入门?
  2. python的socket模块_Python socket模块方法实现详解
  3. nopCommerce的源代码结构和架构
  4. JDBC之二:DAO模式
  5. 分享20个Android游戏源代码。以后看看。
  6. Django中object.all
  7. 鸿鹄系统和鸿蒙系统电脑,荣耀智慧屏发布:首发鸿鹄818处理器及鸿蒙系统,定价3799元起...
  8. 基于RV1126平台imx291分析 --- media部件连接 三
  9. 美化传奇NPC对话框添加图片显示实列
  10. 小米平板1android驱动,小米平板3usb驱动
  11. Tilera多线程网络编程总结
  12. 1.FastAPI简介
  13. 移动端单击图片放大缩小
  14. python解多元多次方程组_Python求解多重或非线性方程,python,多元,多次,方程组,线性方程组...
  15. Windows系统简体中文版官方镜像大全
  16. 测试emmc读写速度软件,真机闪存实测:闪存读取速度到底什么鬼差距有多大建议收藏...
  17. SVN提交错误:系统找不到指定路径
  18. 【C语言】制作一个通讯录管理系统
  19. 买入开仓认购期权的风险有哪些 什么是买入平仓和买入开仓
  20. 微信小程序自定义组件中获取app实例的值,生命周期与页面的生命周期执行先后顺序

热门文章

  1. 用WEB技术栈开发NATIVE应用:WEEX SDK原理详解
  2. 德勤发布2021年度企业AI应用现状报告,AI驱动已成竞争必需品
  3. 低代码发展专访系列之四:低代码平台会带动企业的组织变革吗?
  4. 2021 ISC会上山石网科重磅发布智能下一代防火墙A系列,重新定义边界安全防御
  5. 今天下午三点,2020深圳开放数据应用创新大赛将举行第二场线上推介会
  6. 这些常见的分布式存储系统,你是否都了解?
  7. 4 年 46 个版本,一文读懂 Spring Cloud 发展历史
  8. Python | 7招教你识别一个网站是否是Django后台
  9. 计算机专业英语第2章测试,计算机专业英语答案
  10. blazeds调用java_Flex使用Blazeds与Java交互及自定义对象转换详解(转)