切换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;
}
浙公网安备 33010602011771号