【发布时间】:2020-09-29 09:05:41
【问题描述】:
我在 firebase Crashlytics 上遇到了一个非致命异常:
Non-fatal Exception: java.lang.IllegalStateException
Fragment already added
这是我的相关代码:
var isFragmentAdded = false
for (supportFragment in supportFragmentManager.fragments) {
if (supportFragment::class == fragment::class) isFragmentAdded = true
}
if (isFragmentAdded || fragment.isAdded) {
transaction.show(fragment)
} else {
transaction.add(R.id.contentFragment, fragment)
}
transaction.commitAllowingStateLoss()
如您所见,我在添加片段之前检查是否通过两种方式添加了片段。为什么会出现这个问题? (我无法在我的设备或模拟器上重现它)
【问题讨论】:
-
可能是这个stackoverflow thread 会帮助你