切换fragment时不重新加载

1. Fragment重新实例化 new  会引起重新加载 调onCreate onCreateView  

 

2. FragmentTransaction使用replace会重新加载,使用以下代码

  private void switchFragment(Fragment to) {
        FragmentTransaction transaction = mFragmentManager.beginTransaction();
        if (!to.isAdded()) {
            if (currentFragment == null) {  //进程序后的第一次加载
                transaction.add(R.id.id_content, to).commit();
            } else {
                transaction.hide(currentFragment).add(R.id.id_content, to).commit();
            }
        } else {
            if (currentFragment == null) {  //进程序后的第一次加载
                transaction.show(to).commit();
            } else {
                transaction.hide(currentFragment).show(to).commit();
            }
        }
        currentFragment = to;
    }

posted on 2015-03-20 10:44  mimamo  阅读(234)  评论(0)    收藏  举报

导航