关于fragment的onHidden的问题
-
这个只有在hide,show的时候会触发 在add 的时候是不会触发的 首次加载的时候是不触发的onHiddenChanged
-
activity 上有4个fragment 当前的fragment 为A activity finish掉的时候, B fragment不走生命周期的 除非是已经被调用.add的时候才会走生命周期
关于fragment的onHiddenChanged+onResume+问题
- viewpager+fragment 情况:
onHiddenOnChange()+onResume()的区别:
第一次可见的时候生命周期都是onHiddenOnChange-->onResume
其它都只走onHiddenOnChange。除非是activity切换了走了生命周期,这个时候会走onPause跟onResume但是不走onHiddenOnChange
- 不带有viewpager情况:
Activity has been destroyed
//在 activity 的 onCreate 中
mFragmentManager.beginTransaction()
.add(resId, new OneFragment())
//这里会报异常,activity has been destroyed
.commit();
原因:Fragmenttransaction也是在 onCreate 中初始化,也许是异步初始化。这就涉及到执行顺序问题。 解决:add(redId,Fragment)放到onCreate()后的生命周期onResume()