2017-08-15 113 views
0

我有3個片段片段A是主要片段,片段B是兒童片段。當點擊片段B時,我希望片段C替換整個片段A,並在從C按下後退時再次導航到它。 我無法解決的問題是framelayout容器在Fragment A xml中,所以片段容器我應該給到片段C:用子片段替換主要片段

  Fragment fragment = new PetDetailFragment(); 
      String fragmentTag = fragment.getClass().getName(); 
      getFragmentManager().beginTransaction().replace(R.id.frameLayout, fragment, fragmentTag).commit(); 

enter image description here

+0

onback按下fragmentC你想要哪個片段A或B? –

+0

我想要返回片段A – Suzy

回答

1

當在片段B中的用戶點擊剛剛執行

getFragmentManager().beginTransaction().add(R.id.frameLayout, new FragmentC(), fragmentCTag).commit(); 

,然後當用戶按下回片段A將visib自動。要顯示片段A,手動執行

getfragmentmanager().popbackstack() 
+0

但FragmentA.xml有和fragmentC.xml不怎麼處理這個問題? – Suzy

+0

fragmentA和fragmentC都可以使用相同的佈局顯示。片段A將被推到後臺,片段C將位於最前面。一旦你按下後退按鈕片段C將被銷燬並且片段A將再次可見。它與活動堆棧 –

+0

一樣工作嗎? –