我使用了Android兼容包與API級別10.我有一個FragmentActivity,並在其onCreate方法,我動態地添加一個新創建的片段實例(myPagerFragment):父片段使用不顯示兒童ViewPager
getSupportFragmentManager().beginTransaction().add(R.id.fragment_container, myPagerFragment).commit();
myPagerFragment包含一個使用FragmentPagerAdapter的ViewPager。該實現是根據Android文檔沒有什麼特別的。當在ViewPager子片段中的一個的按鈕被點擊,則該myPagerFragment將使用移除並用新的片段的實例(myOtherFragment)代替:
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.setCustomAnimations(android.R.anim.fade_in, android.R.anim.fade_out);
ft.replace(R.id.fragment_container, myOtherFragment).commit();
的myOtherFragment顯示包含一個按鈕的簡單視圖。當點擊這個按鈕,然後myOtherFragment將被刪除,並使用與myPagerFragment的新實例更換一次:
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.setCustomAnimations(android.R.anim.fade_in, android.R.anim.fade_out);
ft.replace(R.id.fragment_container, myPagerFragment).commit();
此時myPagerFragment不再顯示,因爲它在一開始做,而是顯示黑屏。沒有崩潰,在日誌中沒有任何用處。
我已經嘗試過使用其他視圖的方法,例如,用包含簡單視圖定義的片段替換myPagerFragment,並且這種方式可以正常工作,並且和預期的一樣。只有包含ViewPager的碎片,在連續加載時顯示不正確。
如何讓包含ViewPager的碎片始終正確顯示?
請注意,嵌套'片段'現在**可用**,請參閱[這個問題](http://stackoverflow.com/questions/6221763/android-can-you-nest-fragments) – 2014-07-27 02:03:51