getChildFragmentManager和getsupportFragmentManager和getFragmentManager的关系

简介: getChildFragmentManager和getsupportFragmentManager和getFragmentManager的关系

getChildFragmentManager和getsupportFragmentManager和getFragmentManager的关系


getFragmentManager()所得到的是Fragment的父容器的管理者。

getChildFragmentManager()所得到的是在fragment里面的子容器的管理者。

getSupportFragmentManager()主要用于支持3.0以下的版本,3.0以上的可以直接调用getFragmetnMaanager()。因为fragment是3.0以后才出现的组件,为了让之前的的版本也可以使用,所以才有了getSupportFragmentManager();

Fragment嵌套Fragment要用getChildFragmentManager


容易出错的地方:


Fragment放ViewPager,ViewPager里面是fragment。第一次进入没问题,再次进入ViewPager的fragment时里面内容就没了,数据丢失

Fragment低频率点击切换不会发生问题,过快点击马上崩溃

错误:java.lang.IllegalArgumentException:No view found for id for fragment

调用fragment的replace方法不走onDestroy()、onDestroyView()方法,无法销毁fragment

在fragment中写倒计时,每次切换后倒计时越来越快的问题!

解决方案


Frag7_ViewPager_Adapter adapter = new Frag7_ViewPager_Adapter(
                getChildFragmentManager(),list);


getFragmentManager到的是activitry对所包含fragment的Manager,而如果是fragment嵌套fragment,那么就要利用getChildFragmentManager()了。


目录
打赏
0
0
0
0
0
分享
相关文章
浅谈c和c++和c#之间的关系
浅谈c和c++和c#之间的关系
140 0
UML图讲解(关联关系,单向关联,双向关联,自关联,组合关系,依赖关系,继承关系,实现关系)
UML图讲解,关联关系,单向关联,双向关联,自关联,组合关系,依赖关系,继承关系,实现关系。
4132 0
UML图讲解(关联关系,单向关联,双向关联,自关联,组合关系,依赖关系,继承关系,实现关系)
C++ 基础篇之类 & 对象的关系
C++ 在 C 语言的基础上增加了面向对象编程,C++ 支持面向对象程序设计。类是 C++ 的核心特性,通常被称为用户定义的类型。
类之间的关系共为6种关系
类之间的关系共为6种关系
707 0
量价关系分析
量价关系分析
463 0
量价关系分析
类和类之间的关系(2)
类和类之间的关系(2)
148 0
类和类之间的关系(2)
类和类之间的关系(1)
类和类之间的关系(1)
134 0
类和类之间的关系(1)
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等