原因
看到网上诸多的解决方式,也解释了其起因,是由于Activity在onSaveInstanceState的时候保存了fragment的状态,而activity重建的时候恢复了保存起来的fragment,在执行oncreat的时候往往又重新添加了一遍,网上给了很多种解决方式,个人在项目中使用了好像没太看到很多人使用的方式
处理
在Activity的onAttachFragment(Fragment fragment)中对fragment进行还原
if(fragment instanceof FragmentA){
fragmentA = fragment;
}
if(fragment instanceof FragmentB){
fragmentB = fragment;
}
在Activity的onCreate中创建
if(fragmentA == null){
fragmentA = new FragmentA();
}
if(fragmentB == null){
fragmentB = new FragmentB();
}
如此 完事。。。
看了很多种其他方式解决这个问题,个人认为如上处理简单粗暴。。。如果各位小伙伴感觉有什么问题欢迎指正