XRecyclerView应用于Fragement中 转换时发生View紊乱

来源:互联网 发布:淘宝手机在哪实名认证 编辑:程序博客网 时间:2024/04/29 07:22

  这种情况出现在你使用的Fragement切换时使用的是replace也就是这种

FragmentManager fragmentManager=getSupportFragmentManager();FragmentTransaction fragmentTransaction=fragmentManager.beginTransaction();fragmentTransaction.replace(R.id.fl_container,fragment,flag).commit();
但是这种方法原理是在切换的时候会杀死不显示的fragement,再切换回去时是又创建的新的,切换的多了 就会出现view控件紊乱的现象,
所以,我们来使用add,hide(隐藏)方法来避免这个问题
Fragment  s=new Fragment ();
private void switchFragment(Fragment fragment,String fragmentname) {    if (fragment != s) {        if (!fragment.isAdded()) {                            fm.beginTransaction().hide(s).add(R.id.fl_main, fragment, fragmentname).commit();                   } else {            fm.beginTransaction().hide(s).show(fragment).commit();        }        s = fragment;    }}
这样的弊端是,当切换时,未显示的界面会被放到容器里,有点耗费空间,等待下次切换回来时从容器内拿出来。


1 0
原创粉丝点击