2017-07-24 51 views
1

因此假设有3个片段,我们将它们命名为F1,F2和F3。 F3可以通过以下代码从F1和F2中调用:从被称为片段的片段中返回适当的片段

 Fragment f3 = new F3(); 
     Bundle args = new Bundle(); 
     args.putString("Id", String.valueOf(id)); 
     f3.setArguments(args); 
     FragmentManager fragmentManager = getFragmentManager(); 
     FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); 
     fragmentTransaction.replace(R.id.f1_layout, f3).commit(); 

我想回到我来自哪里。可以做什么?我以不同的方式玩addToBackStack,但无法成功。

回答

-1

试试这个

fragmentTransaction.replace(R.id.f1_layout,f3).commit().addToBackStack(null); 
0

这是你如何使用addToBackStack()方法:

FragmentManager fragmentManager = getFragmentManager(); 
    FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); 
    fragmentTransaction.replace(..............); 
    fragmentTransaction.addToBackStack(null); 
    fragmentTransaction.commit();