【发布时间】:2016-06-22 17:47:21
【问题描述】:
这更像是一个理论问题。
我的应用在使用executePendingTransactions() 调用进行片段交换时崩溃,但没有它也可以正常工作。
我的问题是,如果我不打电话给executePendingTransactions(),一般会出什么问题?
据我了解,如果没有这种方法,Fragment 交换可能不会立即发生,尽管我从未经历过这种情况。
【问题讨论】:
这更像是一个理论问题。
我的应用在使用executePendingTransactions() 调用进行片段交换时崩溃,但没有它也可以正常工作。
我的问题是,如果我不打电话给executePendingTransactions(),一般会出什么问题?
据我了解,如果没有这种方法,Fragment 交换可能不会立即发生,尽管我从未经历过这种情况。
【问题讨论】:
这不是必需的,除非您正在执行一些依赖于事务的操作。来自API documentation,
FragmentTransaction提交后FragmentTransaction.commit(),预定执行 在进程的主线程上异步。如果你想 立即执行任何此类挂起的操作,您可以调用它 函数(仅来自主线程)这样做。请注意,所有回调 和其他相关行为将在此调用中完成,所以 注意从哪里调用它。
【讨论】: