2012-08-06 67 views
0

在我的android應用程序中,我有一個活動包含兩個選項卡,並在活動中動態加載兩個片段。Android片段替換爲Tab導航

http://pastebin.com/EP6BFuPw

我的問題是這樣的:有一次我在第二個片段中的列表視圖中單擊,細節視圖將顯示此片段內。但是,當我選擇其他選項卡時,第一個片段將顯示(其中第二個片段不變,其中包含詳細視圖)。

http://pastebin.com/Bnns0uXQ

+0

在我看來,你需要使用一個被稱爲FragmentTransaction的東西:http://developer.android.com/reference/android/app/FragmentTransaction.html和片段管理器:http://developer.android.com /reference/android/app/FragmentManager.html – Android2390 2012-08-06 21:47:21

回答

0

我遇到同樣的問題。我使用Google提供的TabListener代碼,並且知道問題出在哪裏。在onTabSelected中,我們附加分配給堆棧的片段,並在onTabUnselected中分離舊片段。問題是,一旦我們在列表導航中執行了ft.replace(),TabListener就無法分離選項卡片段,因爲它不再存在並已被替換。

我試過在onTabSelected中替換片段,但後來我們在選項卡中失去了我們的背部堆棧跟蹤。我目前的解決方案是,而不是在標籤中使用片段導航,與片段打開一個新的活動。如果我想出了一個更好的解決方案來支持標籤內導航,我會讓你知道。