Fragment在绘制控件时,外面系统会包裹一层父控件:NoSaveStateFrameLayout,要注意以下两点:
1.创建fragment的适配器extends FraggmentPagerAdatper时,在向父容器添加子控件时,要先判断父容器里是否有子控件,有则先清除再添加,因为FraggmentPagerAdatper会缓存Fragment界面。:如下
public static voidremoveSelfFromParent(View child){if(child!=null){ViewParentparent= child.getParent();if(parent!=null&&parentinstanceofViewGroup){ViewGroupgroup= (ViewGroup)parent;group.removeView(child);//移除子View }}}
2.创建fragment的适配器extends FraggmentStatePagerAdatper时,不会缓存Fragment,无需考虑以上问题。用于对内存要求高要求
如果觉得《Fragment的适配器adap》对你有帮助,请点赞、收藏,并留下你的观点哦!