文档章节

viewpager中fragment的生命周期管理

i_bobby
 i_bobby
发布于 2014/05/11 13:48
字数 309
阅读 9754
收藏 3

调试fragment的时候发现一个莫名其妙的事情,viewpager中包含4个fragment,其中第一个和第三个fragment是要联网取得数据的,如图:

界面刚进去的时候显示第一个fragment,通过log信息,我发现two fragment竟然”偷偷“走了一遍的生命周期!着实把我震惊了!

然后我滑动到two,发现第三个也“偷”了一遍生命周期,也就是说,手机在显示第二个不需要联网的fragment的时候联网了(因为走了three的生命周期)。

然后继续滑动到第三个fragment,发现one fragment执行了onpause和onstop,four fragment跑了生命周期。如图:

图片说明文字

到这里都清楚了,总结一下,就是viewpager显示fragment的时候不会仅仅显示展现的那个fragment,而是将前一个,后一个,和正在显示的fragment的生命周期都跑一遍,这可能也是为了能够更好地管理和显示fragment吧。

ps:

判断当前的fragement是否在当前显示用setUserVisibleHint,上文表示除了此法在生命周期上做文章全是扯淡,这个答案来自德问社区。

© 著作权归作者所有

共有 人打赏支持
i_bobby
粉丝 11
博文 51
码字总数 20985
作品 0
西安
程序员
Android NestedScrollView/ScrollView包裹ViewPager自适应高度

Android NestedScrollView/ScrollView包裹ViewPager自适应高度 当Android的NestedScrollView/ScrollView这类滚动View包裹ViewPager时候,ViewPager中的Fragment包含的又是一系列高度值不固定...

zhangphil
05/12
0
0
你真的会用Fragment吗?Fragment复用的那些事儿

作者: @怪盗kidou 如需转载不得删除本文中的任何内容(含本段) 如果博客中有不恰当之处欢迎在原文中留言交流 https://www.jianshu.com/p/31f013df7580 大家好,好像距离上次发布博客好像又...

怪盗kidou
05/24
0
0
程序猿媛二:Android底部导航栏(选项卡)

底部导航栏(选项卡) ViewPager+RadioGroup 声明:博文为原创,文章内容为,效果展示,思路阐述,及代码片段。源码请通过应用内下载。 转载请保留原文出处“http://my.oschina.net/gluoyer...

花佟林雨月
2013/11/10
0
3
Android开源控件ViewPager Indicator的使用方法

Android Viewpager Indicator是Android开发中最常用的控件之一,几乎所有的新闻类APP中都有使用,下面介绍其基本使用方法。 1. ViewPager Indicator的Library 查看Viewpager Indicator的Lib...

linsea
2014/03/14
0
0
ViewPager一:结合Fragment使用

平时都是打开一个Word来记笔记,现在发现不如写个博文,又不容易丢失,又方便。所以,本次开始,代码一律用截图上传。 接触android开始,就频繁接触android.support.v4包里面的这个向下兼容类...

熊西西77
06/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

获取多个集合列表的笛卡尔积

获取多个集合笛卡尔积 电商中典型业务场景:商品搜索 单属性属性值之间为并查询 不同属性的属性值之间查询为与查询 import java.util.ArrayList;import java.util.List;/** * Created w...

键走偏锋
17分钟前
0
0
echarts 迁移地图 控制鼠标缩放大小比例

在网上找了好久没有找到解决方式,还是重新看了一下文档,终于找到的解决方案, zoom:1, //默认显示级别 scaleLimit:{min:1,max:3}, // 缩放级别 echarts 文档-配置项链接 http://echarts.b...

心驰
21分钟前
0
0
Boot2Docker ISO is out-of-date,

Boot2Docker ISO is out-of-date, downloading the latest release. 使用docker-machine时无法更新Boot2Docker ISO导致创建vm machine失败 解决方法:关闭网络,创建好之后再开启...

writeademo
29分钟前
0
0
在 Tomcat 中设置 Tapestry 框架的 html 热加载

如果开发中使用到了 Tapestry 这个框架,如果事先没有设置过的话,开发的时候 html 是不会热加载的,也就是说修改了 html 文件,不能刷新浏览器后立马看到修改完的效果,必须先重新启动应用服...

LeoXu
51分钟前
0
0
【微服务】开启巨石应用到微服务的探索

背景 在过去的一年时间里,我一直在从事一件事情,将现有的单体应用(巨石应用)向微服务改造。 接下来,将持续整理一些在微服务路上的学习与成长。 为什么要做微服务 单体应用,开发、部署简...

艳沐石
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部