我在我的带有片段的项目中使用了commit方法。
无论如何,有时候我遇到了IllegalStateException: Can not perform this action after onSaveInstanceState
错误,我只找到commitAllowingStateLoss()
这个方法,找不到任何好的解决方案。我已将commit函数更改为commitAllowingStateLoss()
,但长时间未使用它进行测试,因此该函数可以对我有帮助吗?主要问题是commit()
和commitAllowingStateLoss()
有什么区别?
最佳答案
commit()
和commitAllowingStateLoss()
之间只有一个区别:如果发生状态丢失,后者不会引发异常。除此之外,它们具有相同的行为。
有关更多信息,请参见我的blog post。