android - 两个片段相互重叠
问题描述
我BottomNavigationView
在我的主要活动中使用了一个选项卡界面。在 中onCreate()
,使用初始片段调用 switchTab 方法。点击相应选项卡的底部导航调用switchTab()
,应隐藏当前选项卡并显示新选项卡。如果片段未添加到 中SupportFragmentManager
,则将其添加,否则将显示。这是我的代码片段:
private fun switchTab(fragment: Fragment, tag: String): Boolean {
val currentFragment = supportFragmentManager.fragments.find { it.tag == tag }
val ta = supportFragmentManager.beginTransaction()
if (currentFragment != null) {
ta.hide(currentFragment)
}
if (supportFragmentManager.fragments.contains(fragment)) {
ta.show(fragment)
} else {
ta.add(R.id.contentContainer, fragment, tag)
}
ta.commit()
return true
}
现在的问题是,有时两个片段是可见的并相互重叠,使用户界面无法使用。这怎么可能发生?
解决方案
推荐阅读
- php - PHP组合多个对象数组并改变数组结构
- javascript - Webpack Encore Jquery 最大调用栈大小
- mysql - 带比较的案例陈述
- cassandra - 没有列的 DSE 5.1.10 表.. 重新启动错误
- python - 如何以编程方式传递关键字以在 python 中运行?
- linker - 构建用于 Nordic SDK 程序的静态 rust 库时的“memset”的多重定义
- docker - 如果在 Docker 下运行的 .NET Core 单元测试的代码覆盖率低于 90%,则破坏 TeamCity 中的构建
- ios - 在目标 c 中使用 jsonModel 映射时将默认值设置为空字段
- android - 为特定活动实现广播接收器
- mongodb - MongoDB:如何只更新文档中的一个元素?