fragment切换不调用onResume

Android 码拜 5年前 (2016-05-30) 949次浏览
页面切换时使用add:

FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.add(R.id.fragment, fragment, mFragmentName);
ft.addToBackStack(mFragmentName);
ft.commitAllowingStateLoss();

从A切换到B,然后从B返回(getFragmentManager().popBackStack();)后A没有调用onResume()方法

解决方案

14

fragment里面的onResume,onPause这些方法,只有在他依赖的activity进入相应的生命周期的时候才会调用的.fragment之间的切换是不会调用的

14

popBackStack()是对已经存在栈中的fragment进行状态恢复,当然不调用onResume()。
Fragment虽然有onResume,但是这个方法是Activity的方法,调用时机也是和与Activity相同。

12

fragment生命周期与依赖的activity生命周期是一样的

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明fragment切换不调用onResume
喜欢 (0)
[1034331897@qq.com]
分享 (0)