您的位置 首页 百科问答

commit和commitAllowingStateLoss的区别是什么?

commit和commitAllowingStateLoss的区别是什么?

commit和executePendingTransactions的区别:

用add(), remove(), replace()方法,把所有需要的变化加进去,然后调用commit()方法,将这些变化应用。

在commit()方法之前,你可以调用addToBackStack(),把这个transaction加入back stack中去,这个back stack是由activity管理的,当用户按返回键时,就会回到上一个fragment的状态。

你只能在activity存储它的状态(当用户要离开activity时)之前调用commit(),如果在存储状态之后调用commit(),将会抛出一个异常。

这是因为当activity再次被恢复时commit之后的状态将丢失。如果丢失也没关系,那么使用commitAllowingStateLoss()方法。

上一篇 普拉提减肥法 普拉提如何减肥?
下一篇 体温37正常吗
扫一扫,手机访问

扫一扫,手机浏览