需要編寫一個上邊不變,下邊是幾個Tab,中間顯示的內容可以改變的頁面,最後使用了ActivityGroup來實現,中間各個頁面間的跳轉是使用以下語句實現的: container.removeAllViews();
Intent intent = new Intent(Player.this,PlayerAlbum.class);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
Window subActivity = ((ActivityGroup)GinwavePlayer.this.getParent()).getLocalActivityManager().startActivity("", intent);
container.addView(subActivity.getDecorView());,
由於需要橫屏和豎屏顯示不同的布局(橫屏顯示的內容是一個圖片瀏覽的Gallery),所以在onConfigurationChanged函數中重新設定布局,在豎屏時各個頁面跳轉是正常的,從豎屏變為橫屏,再變為豎屏,頁面就跳轉不過去了(從Player跳轉到PlayerAlbum頁面),我打了log看了下,發現已經執行了PlayerAlbum的建構函式,但介面還是顯示Player頁面,在csdn上提問,也沒有人給出一個答案,可能我問的太晚了吧,昨晚上想了一晚上,為什麼豎屏時跳轉是正常的,而從豎屏變為橫屏,再變為豎屏後跳轉不能進行,我想可能是因為上邊startActivity時沒有指定唯一的String
ID,然後我給它加上了唯一的String ID,但還是有問題,然後我想可能是由於ActivityGroup中Activity記錄錯了,然後我在subActivity之前增加了((ActivityGroup)PlayList.this.getParent()).getLocalActivityManager().removeAllActivities()函數,然後切換就沒有問題了,對ActivityGroup的理解還是存在問題,以後得多看看~~