在ViewPager中的Fragment的生命周期  随着页面的切换 当前的展示页相邻的页面生命周期一直在变化

一开始 刚进入Activity时候,ViewPager默认初始化好前两个Fragment(消息和任务)

消息 ->任务

05-09 14:47:39.593 31509-31509/tyh.com.tablayout E/TYH: 团队onAttach
05-09 14:47:39.593 31509-31509/tyh.com.tablayout E/TYH: 团队onCreate
05-09 14:47:39.593 31509-31509/tyh.com.tablayout E/TYH: 团队onCreateView
05-09 14:47:39.603 31509-31509/tyh.com.tablayout E/TYH: 团队onStart
05-09 14:47:39.603 31509-31509/tyh.com.tablayout E/TYH: 团队onResume

任务 ->团队

5-09 14:55:26.932 31509-31509/tyh.com.tablayout E/TYH: 消息onPause
05-09 14:55:26.932 31509-31509/tyh.com.tablayout E/TYH: 消息onStop
05-09 14:55:26.932 31509-31509/tyh.com.tablayout E/TYH: 消息onDestroyView
05-09 14:55:26.932 31509-31509/tyh.com.tablayout E/TYH: 部门onAttach
05-09 14:55:26.932 31509-31509/tyh.com.tablayout E/TYH: 部门onCreate
05-09 14:55:26.942 31509-31509/tyh.com.tablayout E/TYH: 部门onCreateView
05-09 14:55:26.942 31509-31509/tyh.com.tablayout E/TYH: 部门onStart
05-09 14:55:26.942 31509-31509/tyh.com.tablayout E/TYH: 部门onResume

团队 ->部门

05-09 14:57:18.371 31509-31509/tyh.com.tablayout E/TYH: 任务onPause
05-09 14:57:18.371 31509-31509/tyh.com.tablayout E/TYH: 任务onStop
05-09 14:57:18.371 31509-31509/tyh.com.tablayout E/TYH: 任务onDestroyView

部门 ->团队

05-09 15:00:50.918 31509-31509/tyh.com.tablayout E/TYH: 任务onCreateView
05-09 15:00:50.918 31509-31509/tyh.com.tablayout E/TYH: 任务onStart
05-09 15:00:50.918 31509-31509/tyh.com.tablayout E/TYH: 任务onResume

你会发现 当 Fragment完成onCreate之后再去切换的时候  只会执行onCreateView和onDestroyView方法不会再去onCreate

那么如何避免重复的创建和销毁呢  解决方案如下:

方案一(不推荐):

mViewPager.setOffscreenPageLimit(4);

方案二(推荐):

@Overridepublic View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {    if(view==null){view = inflater.inflate(R.layout.contentfragment,container,false);        tvContent = (TextView) view.findViewById(R.id.tv_content);        String string = getArguments().getString(KEY);        tvContent.setText(string);        tvContent.setTextColor(Color.BLUE);        tvContent.setTextSize(30);    }    return view;}

@Overridepublic void onDestroyView() {    super.onDestroyView();    if(view!=null){view.getParent().remove(view);    }}

如此当重新创建Fragment的时候就会复用之前创建好的View不会重复创建

转载于:https://www.cnblogs.com/bimingcong/p/10276450.html

ViewPager中Fragment的重复创建、复用问题相关推荐

  1. android_基础_ViewPager中Fragment的重复创建、复用问题

    转载自:https://www.cnblogs.com/bimingcong/p/10276450.html ViewPager中Fragment的重复创建.复用问题 在ViewPager中的Frag ...

  2. FragmentManager中Fragment的重复创建、复用问题

    当我们在Activity中使用 Fragment可以用FragmentManager去添加到对应个ViewGoup中使用 FragmentManager fragmentManager = getSu ...

  3. ViewPager中Fragment的生命周期和FragmentPageAdapter与FragmentStatePageAdapter对其的影响

    首先,我们创建一个Activity和一个Fragment,并在Fragment的各个生命周期打好日志,并把Fragments丢进Viewpager,这里我们往Viewpager里丢了3个Fragmen ...

  4. android viewpager fragment 生命周期,ViewPager中Fragment的生命周期

    网上有很多Fragment生命周期的帖子,但是看了一下,没有找到自己想了解的东西,于是决定自己动手体验一下这个生命周期.主要想了解以下几个问题: Activity中的Fragment的生命周期 Vie ...

  5. android 百度定位开启后fragment 不显示,解决Android百度地图MapView在ViewPager中Fragment切换黑屏问题...

    百度地图切换界面出现黑屏原因是地图退出释放内存时渲染出现bug导致.因为是百度地图本身内部bug.所以我们无法从本质上去修复这个bug android:id="@ id/dynamics_m ...

  6. android tab pageview,Android Fragment在ViewPager中到底经历了什么?

    2017年05月30 最后的懒加载写的不好,推荐请叫我大苏同学写的Fragment懒加载博客, [Android]再来一篇Fragment的懒加载(只加载一次哦) 在大苏同学的博客评论里,看到了另一个 ...

  7. Fragment在ViewPager中的生命周期

    转载自 hdszlk的博客     原文链接:https://www.2cto.com/kf/201607/530540.html 1.一直以来的疑问 Fragment在ViewPager到底经历了哪 ...

  8. 友盟页面统计 - 关于Viewpager中的Fragment的生命周期

    Activity和Fragment各自理论上的生命周期 Activity的生命周期是较为经典也最清晰的,在此不表: Fragment从出现到广泛运用也有一段时间了,其标准生命周期也仅比Activity ...

  9. android viewpager 嵌套fragment,Android ViewPager+Fragment多层嵌套(使用问题处理)

    之前写了Android ViewPager+Fragment(使用问题处理),封装了一个BaseFragment,对于简单使用ViewPager+Fragment而言,是没有问题的. 不过,ViewP ...

最新文章

  1. struts1生成验证码
  2. IT 巡检内容、方法大全
  3. 搭建TXManager分布式事务协调者
  4. 登陆工行网上银行报60058017错误及输入正确网银密码提示密码不正确
  5. 数学家告诉你什么时候结束单身?!
  6. 利用PowerShell Empire实现Word文档DDE攻击控制(简单没啥用)
  7. [BZOJ3676][Apio2014]回文串
  8. 计算机本地无法连接失败怎么办,本地连接连不上怎么办?本地连接连不上解决方法...
  9. Unity之如何使用夜神模拟器logcat
  10. 土壤有机质空间分布数据
  11. JAVA项目开发之文档篇
  12. [读书笔录]解析卷机神经网络(魏秀参)——第二章
  13. c语言语法 英语,英语干货:英语语法基础知识大全
  14. VScode退出全屏
  15. Inpaint9.1最新网页版下载及inpaint怎么去水印教程
  16. 86.3 安全性问题 xss、DDOS、CC、sql注入 攻击等
  17. 3分钟教会你们如何连接CentOS 7外网
  18. 做需求分析师的几点困惑
  19. vue、Dropdown 下拉菜单、Dropdown属性事件、vue Dropdown 全部下拉菜单、vue Dropdown 全部属性事件
  20. win7系统提示非正版 该如何激活

热门文章

  1. 转载:mysql存储过程讲解
  2. 【BZOJ3932】[CQOI2015]任务查询系统 主席树
  3. 30分钟快速搭建移动应用直传OSS服务
  4. 关于Linux的总结(三)
  5. 解决三星手机EditText背景色的问题
  6. MFC学习中遇到的小问题和解决方案
  7. 转载 - 最近对问题
  8. iview table 方法若干
  9. iOS - LocalCache 本地数据缓存
  10. Fix an “Unapproved Caller” SecurityAgent Message in Mac OS X