我正在使用FragmentManager
將片段動態添加到活動。我怎樣才能在另一個片段之前添加一個新片段,而不是在最後,而不必重做整個片段集?更改片段的順序
例如,在活性有這樣垂直顯示三個片段:
FragA
FragB
FragC
當我添加四分之一片段NewFragD
它們現在應該安排這樣:
FragA
NewFragD
FragB
FragC
我正在使用FragmentManager
將片段動態添加到活動。我怎樣才能在另一個片段之前添加一個新片段,而不是在最後,而不必重做整個片段集?更改片段的順序
例如,在活性有這樣垂直顯示三個片段:
FragA
FragB
FragC
當我添加四分之一片段NewFragD
它們現在應該安排這樣:
FragA
NewFragD
FragB
FragC
你需要的東西是這樣的:
@Override
public Fragment getItem(int position) {
if (position == 0) return new frg1();
else if (position == 1) if (newFragment)return new Mapfrag2(); else return frg2()
else if (position == 2) return new frg3();
else return new frg1();
}
不要猜測你的答案。請在* comment *中提問,或在* answer *中提供答案。 – jww
這對我很有用,我對他的需求並不瞭解;我試圖幫助 –
獲取特定片段不是問題。我需要的是能夠在現有片段之間插入一個新的。 –
你的意思是替換某個容器中的片段? – AlexWalterbos
我認爲他意味着將一個片段插入到任意一個位置,而不必先彈出所有的東西。 –
對不起,我猜這不是很清楚。我編輯了我的例子,希望它現在更有意義。所有的片段在活動中都是可見的,但是當我添加一個新片段時,我不希望它在所有已有的片段之後出現。 –