Android Fragment add/replace以及backstack
2016-01-12 10:48
387 查看
无论Fragment以何种方式加入,都不会影响backstack,backstack由addToBackStack函数决定,只有调用了这个函数,才会将Fragment加入返回栈。这个说法其实不太准确,返回栈记录的是Fragment切换的过程,所以加入返回栈的是Transaction,而不是Fragment本身。
那么add和replace的区别是什么呢?
以add方式加入Fragment,底层的Fragment被覆盖,当按下返回键时,当前Fragment弹出返回栈,底层Fragment直接显示出来,无需重建。
以replace方式加入Fragment,底层Fragment被替换(replace嘛),当按下返回键时,当前Fragment弹出返回栈,底层Fragment需要重建。然后再显示出来。
那么add和replace的区别是什么呢?
以add方式加入Fragment,底层的Fragment被覆盖,当按下返回键时,当前Fragment弹出返回栈,底层Fragment直接显示出来,无需重建。
以replace方式加入Fragment,底层Fragment被替换(replace嘛),当按下返回键时,当前Fragment弹出返回栈,底层Fragment需要重建。然后再显示出来。
相关文章推荐
- Android ashmem hacking
- PackageManagerService(Android5.1)深入分析(一)构造函数
- android通过led实现手电筒
- 阅读《Android 从入门到精通》(9)——多项选择
- Mac环境下 androidStudio 的快捷键
- PS操作01 - PS切手机图标 + Android.9.png图片制作
- android Spinner setSelection无效 总显示第一项
- Android API 中文 (1) —— 了解生命周期回调
- Android Studio实用插件推荐
- android内存分析
- Android 不同View ID相同
- android调用webservice
- Android Service完全解析,关于服务你所需知道的一切
- 修改android项目名
- android应用程序中获取view 的位置
- android切换屏幕时的生命周期
- Android不能在oncreate里面播放音乐问题
- android APK更新主要代码
- 详解Android文件存储
- Android-Service生命周期