我有4个片段。阿 乙 中 德
我只在后台堆栈中保留了片段 A。我从片段 A -> B -> C> D
现在在片段 D 中的反向按下时,我应该重定向到片段 A,但现在仪式 A 和 D 片段一起显示在屏幕上。如何隐藏片段 D?
如果你弹出堆栈怎么办..添加片段 A 并启动任何片段。
例如:
Fragment fragmentA = new FragmentA();
Fragment fragmentD = new FragmentD();
FragmentManager manager = getFragmentManager();
FragmentTransaction transaction = manager.beginTransaction();
manager.popBackStack();
transaction.addToBackStack(fragmentA.getClass().getName());
transaction.replace(R.id.frame_container, fragmentD);
transaction.commit();
第 1 步:在包含框架布局的主活动中编写代码 它的名字是碎片容器
getSupportFragmentManager().beginTransaction().add(R.id.frgContainer,new FragOne(),FragOne.class.getName()).commit();
在"FragOne"上编写代码
FragThird FragThird = new FragThird();
FragmentTransaction ft = getActivity().getSupportFragmentManager().beginTransaction();
ft.setCustomAnimations(R.anim.slide_in_left, R.anim.slide_out_left, R.anim.slide_in_right, R.anim.slide_out_right);
// ft.addToBackStack(FragTrackView.class.getName());
ft.add(R.id.frgContainer, FragThird, FragFourth.class.getName());
ft.commit();
同样是添加 2 个片段和最后一个片段像这样添加
FragFourth FragFourth= new FragFourth();
FragmentTransaction ft = getActivity().getSupportFragmentManager().beginTransaction();
ft.setCustomAnimations(R.anim.slide_in_left, R.anim.slide_out_left, R.anim.slide_in_right, R.anim.slide_out_right);
ft.addToBackStack(FragFourth.class.getName());
ft.add(R.id.frgContainer, FragFourth, FragFourth.class.getName());
ft.commit();