转载自 : https://www.cnblogs.com/yuqf/p/5887929.html
最近在一个项目的首页,然后一个ViewPager里面加载了五个Fragment,但是在切换过程中发现,Fragment总是被销毁,在网上查了一下,发现有两种办法可以保证Fragment不被销毁,保持切换前的状态。
方法一:只需要一行代码pager.setOffscreenPageLimit(3); 【这个网上很多博客都用提到过,没有用过】
方法二【验证OK】:
在Fragment的onCreateView方法中,做如下处理:
private View parentView;
@Override
publicView onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
if(parentView ==null) {
parentView= inflater.inflate(R.layout.fragment_singer, container,false);
//在这里做一些初始化处理
initChoiceLayout();
}else{
ViewGroup viewGroup=(ViewGroup) parentView.getParent();if(viewGroup !=null)
viewGroup.removeView(parentView);
}
return parentView;
}
网友评论