Fragment的add方法和replace方法
来源:4-8 主界面底部导航栏封装-3

Sephiroth_zy
2019-03-01
isFirst变量本身默认就是false,这里我觉得应该可以直接用replace方法替换Fragment,不需要add方法添加Fragment和这一层判断。
写回答
1回答
-
Qiujuer
2019-03-01
add
与
replace
并不相同哦,如果调用replace,那么意味着,体会后之前在这个节点上的fragment就全部被移除了;相当于remove掉,此时fragment全部的状态都丢弃了,fragmentmanager状态都丢失了。
而采用add后使用detach虽然界面不可见,但是依然被fragmentmanager持有,并维持状态,这在下次进行attach显示时将会更加顺畅。
00
相似问题