【发布时间】:2016-12-20 06:16:37
【问题描述】:
更新到新的 appcompat 库 com.android.support:appcompat-v7:25.1.0 后,在事务中替换片段时,我有了新的片段生命周期。
例如我有两个片段FrFirst 和FrSecond,在onStart 和onStop 中有日志,我将第一个替换为第二个,然后将第二个替换为第一个:FrFirst -> FrSecond -> FrFirst。
getActivity().getSupportFragmentManager()
.beginTransaction()
.replace(R.id.content, new FrSecond())
.commit();
在以前的 appcompat 版本中,我可以阅读以下日志:
FrFirst:导航到第二个
FrFirst:停止
FrSecond:开始FrSecond:导航到第一个
FrSecond:停止
FrFirst:开始
在 25.1.0 中,此日志:
FrFirst:导航到第二个
FrSecond:开始
FrFirst:停止FrSecond:导航到第一个
FrFirst:开始
FrSecond:停止
所以现在onStart 之前调用的呈现片段然后onStop 的当前。
为什么方法顺序改变了,是支持库中的错误吗?
【问题讨论】:
-
签出-androidlearnersite.wordpress.com/2017/02/27/… ..它解释了fragmnet事务期间的片段生命周期与最新的appcompat版本
标签: android android-fragments android-appcompat android-lifecycle fragment-lifecycle