一、添加到container
fragmentManager = getSupportFragmentManager();
/**
* 开启事务
*/
fragmentTransaction = fragmentManager.beginTransaction();
login_fragment = new Login_Fragment();
fragmentTransaction.add(R.id.container, login_fragment);
/**
* 提交事务
*/
fragmentTransaction.commit();
二、在同一个container的切换,A到B
LoginSecondStep_Fragment loginSecondStep_fragment = LoginSecondStep_Fragment.getMe(phone, AorB, ifSendPhone);
loginSecondStep_fragment.setIfSendPhone(ifSendPhone);
FragmentManager fm = getActivity().getSupportFragmentManager();
FragmentTransaction ft = fm.beginTransaction();
ft.replace(R.id.container, loginSecondStep_fragment);
ft.addToBackStack(null);
ft.commit();
此时,A的生命周期执行到onPause–>onDestory–>onDestoryView
从B再返回到A,A的生命周期执行:
onCreateView –>onViewCreated–>onActivityCreated–>onStart–>onResume
so 一定要借助生命周期!!!
fragment生命周期,看这篇就够了
原著