当前位置: 首页 > news >正文

商务网站建设实验记录泉州网站制作维护

商务网站建设实验记录,泉州网站制作维护,远程服务器怎么建设自己的网站,赣州网站建设多少钱ViewPager配合不同的PagerAdapter#xff0c;对应Fragment的生命周期有着不同的表现#xff0c;了解这个生命周期机制对于开发者选择合适的PagerAdapter实现不同的效果#xff0c;有着很大的帮助。 FragmentPagerAdapter和FragmentStatePagerAdapter的区别#xff1a; Fra… ViewPager配合不同的PagerAdapter对应Fragment的生命周期有着不同的表现了解这个生命周期机制对于开发者选择合适的PagerAdapter实现不同的效果有着很大的帮助。 FragmentPagerAdapter和FragmentStatePagerAdapter的区别 FragmentPagerAdapter 类内的每一个生成的 Fragment 都将保存在内存之中因此适用于那些相对静态的页数量也比较少的那种如果需要处理有很多页并且数据动态性较大、占用内存较多的情况应该使用FragmentStatePagerAdapter。FragmentStatePagerAdapter 正如其类名中的 ‘State’ 所表明的含义一样该 PagerAdapter 的实现将只保留当前页面当页面离开视线后就会被消除释放其资源 而在页面需要显示时生成新的页面(就像 ListView的实现一样)。这么实现的好处就是当拥有大量的页面时不必在内存中占用大量的内存。 viewPager.setOffscreenPageLimit(X)对Fragment创建时机的影响 如果ViewPager下有N个fragments并设置了setOffscreenPageLimit(X)则当fragment1用户可见时其后面X个fragment也已经同fragment1一同预先创建完成。当滑动fragment1-fragment2时第X2个fragment完成创建以保持当前fragmentfragment2后有X个fragment已经创建完成作为缓存。 FragmentPagerAdapter和FragmentStatePagerAdapter差别 如前面提到FragmentPagerAdapter不会释放创建过的fragment这样当fragment1-fragmentN完成以轮切换后从fragmentN-fragment1反方向切换时不会再触发fragment的创建即onCreate()不会被调用。 而FragmentStatePagerAdapter做从fragmentN-fragment1反方向切换时则会继续触发fragment的创建以保障有X个fragment被创建并缓存着因为大于X的fragment已经被释放了 总结fragment的onCreate()总是预先被调用且被调用的时机总是同当前用户可见的fragment保持X个fragment的“距离“即某个fragment的onCreate()被调用时它的前X个fragment是用户可见的。 奇怪的onResume()前面说明了onCreate()被触发的规律但是onResume()的触发规律则十分奇怪eg有以下fragmentf1f2f3f4当f1-f2时f2的onResume()被触发当f2-f3时f3的onResume()被触发当f3-f2时f2的onResume()不会被触发当f2-f3时f3的onResume()仍然被触发鉴于这个onResume()被触发的规律很“混乱”所以不宜做一些需要确定性的任务。后面有机会在研究下了 实际应用 当fragment切换至用户可见后要做一些处理比如请求网络数据更新当前页面等。 经过前面的分析可知onCreate()和onResume()的触发时机都不满足以上要求onCreate()会预创建FragmentPagerAdapter下还会一直缓存onResume()的触发时机又没有规律正常情况下大家对于这种需求一般会想到resume()这类接口。 我们可以利用setUserVisibleHint()接口实现该功能即当本fragment为用户可见时该接口被触发以达到每次fragment切换为可见后更新当前fragment页面数据的目的。 实现类似网易新闻客户端ViewPager每次只加载当前页。 如前所诉使用FragmentPagerAdapter或者FragmentStatePagerAdapter都会默认多加载X页X通过setOffscreenPageLimit()设置最小值为1。 这个需求同样通过setUserVisibleHint()来实现将网络请求加载页面的处理从onCreate()中移到setUserVisibleHint()中这样就实现了切换到页面才进行更新的效果。 notes貌似在某些厂商的rom上对FragmentPagerAdapter的缓存机制做了改动导致缓存失效这样就要十分小心对缓存fragment生命周期的处理尽量避免引用不在前台展示的fragment。
http://www.sadfv.cn/news/384441/

相关文章:

  • 做网站一个月工资wordpress默认链接
  • 宣传 网站建设和政务公开免费下载app软件正版
  • 杭州建设工程信息网站沈阳优化推广哪家好
  • 电子商务网站开发 刘兰娟伪静态规则变动对网站的影响
  • 外贸工艺品网站建设上海网络推广专员招聘
  • 如何做原创漫画网站做网站用虚拟服务器可以吗
  • 怎么看网站服务器地址宝塔wordpress固定连接
  • 网站页面切换效果抖音代运营图片
  • 网站产品分类设计深圳找个做网站平台的
  • 上海浦东做网站公司国内做网站公司排名
  • 网站建设多选题做网站放广告赚钱
  • 网站的标题与关键词外发加工厂联系方式
  • 免费查企业电话网站推广普通话的画
  • 企业网站首页设计公司老薛主机 wordpress 打不开
  • 网站为什么要seo成都网站设计制作工作室
  • 深圳响应式网站您的网站空间已过期
  • dede关闭网站网站开发与设计教程
  • 凡科网站建设怎么样重庆网上房地产查询
  • 怎么做网站的外链北京做网站的大公司
  • 青岛网站制作怎么查看网站打开速度
  • 网站建设发展历程ppt做手机软件需要学什么
  • 什么网站可以免费做会计初级网站运营需要 做哪些工作内容
  • 申请付费网站邵阳市建设投资经营集团网站
  • 箱包官方网站模板网站开发规范有哪些
  • 衡水网站推广的网络公司网站开发定义名称
  • 网站开发流程进度表免费找素材软件
  • 深圳网站网络建设做网页需要什么软件
  • 网站开发哪种语言h5科技 网站
  • 如何建设农业推广网站请网站建设的人多少钱
  • 后台管理网站建设网站建设无锡海之睿