我對此非常困惑。我有一個actionbar
列表導航。我點擊列表一個接一個地打開2 fragment
並顯示在同一活動中。我使用這種方法基本上替換它們:片段在活動輪轉上重疊
public void openFragment(AprilAppsFragment createdFragment){
if (createdFragment.getClass().isInstance(getDisplayedFragment()))
return;
FragmentManager manager = getSupportFragmentManager();
FragmentTransaction transaction = manager.beginTransaction();
transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
transaction.replace(R.id.main_fragment, createdFragment, "displayed fragment");
transaction.addToBackStack(null);
transaction.commit();
}
我打開片段甲,然後我打開片段乙,然後我旋轉屏幕。片段A正在重新創建崩潰我的應用程序
因爲我使用替換?我如何避免重新創建不再顯示的碎片,而不會丟失對它們進行反壓的可能性?
你可以從崩潰中添加堆棧跟蹤? – ianhanniballake 2013-02-25 19:19:04
這將是無關緊要的。崩潰發生時,片段試圖用數據填充其內容,但無法實例化視圖組件,因爲它甚至未顯示 – 2013-02-25 19:20:12
您是否從「OnNavigationListener」調用該方法?如果是,請記住,活動創建/娛樂會觸發偵聽器。 – Luksprog 2013-03-01 14:05:10