Fragment 出栈的方法popBackStack

简介: Fragment 出栈的方法popBackStack

Fragment弹出回退栈的方法有以下:


void popBackStack()


弹出堆栈中的一个并且显示,类似按下返回键的操作;


popBackStack(String tag,int flags)


tag可以为null或者相对应的tag,flags只有0和1(POP_BACK_STACK_INCLUSIVE)两种情况


如果tag为null,flags为0时,弹出回退栈中最上层的那个fragment。


如果tag为null ,flags为1时,弹出回退栈中所有fragment。


如果tag不为null,那就会找到这个tag所对应的fragment,flags为0时,弹出该

fragment以上的Fragment,如果是1,弹出该fragment(包括该fragment)以

上的fragment。


popBackStack(int id,int flags)


与popBackStack(String tag,int flags)类似,找到id代表的fragment,然后执行一样的操作


popBackStackImmediate(int id, int flags)


popBackStackImmediate(String name, int flags)


popBackStackImmediate()


这几个方法类似以上的方法,只不过这几个在内部调用时会立即弹出

重要的东西来了!!!!


很多时候我们都以为fragment入栈后,譬如 依次入栈 fragment A ,B ,C ,D,

然后弹出B fragment,在回退栈里并不是我们想象的只剩下 D C A ,而是D C null

A,所以使用FragmentManager.getFragments(),然后拿List< Fragment >里的

对象时特别要注意判空。


如下图:

目录
相关文章
|
安全 Java Kotlin
面试必备:Kotlin 线程同步的 N 种方法
面试必备:Kotlin 线程同步的 N 种方法
459 0
|
小程序 JavaScript
【微信小程序】之自定义九宫格展示row-grid(每行显示三个)
【微信小程序】之自定义九宫格展示row-grid(每行显示三个)
|
XML JSON 缓存
让UI忙碌的安卓Lottie动画渲染库(二)
上节我们讲述了Lottie开源库如何导入Android Studio但是,开源库是不断迭代的,所以我们也要及时更新
797 0
|
存储 API Android开发
kotlin开发安卓app,使用webivew 触发 onShowFileChooser, 但只能触发一次,第二次无法触发,是怎么回事。 如何解决
在Android WebView开发中,`onShowFileChooser`方法用于开启文件选择。当用户只能选择一次文件可能是因为未正确处理选择回调。解决此问题需确保:1) 实现`WebChromeClient`并覆写`onShowFileChooser`;2) 用户选择文件后调用`ValueCallback.onReceiveValue`传递URI;3) 传递结果后将`ValueCallback`设为`null`以允许再次选择。下面是一个Kotlin示例,展示如何处理文件选择和结果回调。别忘了在Android 6.0+动态请求存储权限,以及在Android 10+处理分区存储。
|
存储 安全 API
Android经典实战之存储方案对比:SharedPreferences vs MMKV vs DataStore
本文介绍了 Android 开发中常用的键值对存储方案,包括 SharedPreferences、MMKV 和 DataStore,并对比了它们在性能、并发处理、易用性和稳定性上的特点。通过实际代码示例,帮助开发者根据项目需求选择最适合的存储方案,提升应用性能和用户体验。
849 1
|
Android开发
Android获取当前系统日期和时间的三种方法
Android获取当前系统日期和时间的三种方法
894 4
|
XML Java 开发工具
在Android中使用ProgressBar显示进度
在Android中使用ProgressBar显示进度
1629 2
|
前端开发 测试技术
如何绘制wbs图
如何绘制wbs图
702 0
|
XML Java Android开发
Android旋转动画rotate动画,xml配置set实现
Android旋转动画rotate动画,xml配置set实现 作为快速备忘查询,写到这里记下。 在xml配置动画所需的set设置资源,然后上层Java代码以最少的代码实现一个匀速旋转的动画,这种开发场景在一些加载动画中比较常见,比如视频缓冲时候的加载动画。
2229 0
|
分布式计算 大数据 Hadoop
大数据平台搭建(容器环境)——ClickHouse单机安装配置
大数据平台搭建(容器环境)——ClickHouse单机安装配置