这更像是一个理论问题。
我的情况是我的应用程序在使用executePendingTransactions()
调用的片段交换时崩溃,并且在没有它的情况下正常工作。
如果我不打电话给executePendingTransactions()
,我的问题是一般会出现什么问题?
据我了解,如果没有这种方法,Fragment
交换可能不会立即发生,尽管我从未经历过这种情况。
答案 0 :(得分:14)
除非您执行的操作取决于交易,否则不需要。来自API documentation,
提交
FragmentTransaction
后FragmentTransaction.commit()
,计划执行 在进程的主线程上异步。如果你想 立即执行任何此类待处理操作,您可以调用它 函数(仅从主线程)这样做。请注意所有回调 和其他相关的行为将在这个电话中完成,所以 小心从哪里调用它。