2013-03-21 205 views
3

我已經以編程方式添加這是對活動的的onCreate()創建調用這樣的片段:我是否需要刪除程序添加片段

mFragment = (MyFragment) pFm.findFragmentByTag(TAG); 

    if (mFragment == null) {   
     mFragment = MyFragment.newInstance(); 
     pFm.beginTransaction().add(mFragment, MyFragment.class.getSimpleName()).commit(); 
    } 

片段的壽命是不確定的。問題是,我是否必須在某些時候刪除它?例如,在onDestroy(),如果isFinishing()返回true

+0

爲什麼你想刪除它.​​.....? – Developer 2013-03-21 13:03:41

+0

我的直覺告訴我add()調用通常應該有相應的remove()調用。但是,這似乎並非如此。 – lstipakov 2013-03-21 13:07:28

+1

@Stipa當然有一個刪除被稱爲某處某處。但是,如果您不需要由於某種原因明確調用它(而不是替換()),那麼系統會爲您處理。 – Shade 2013-03-21 13:12:58

回答

1

不,你不需要。以編程方式添加片段不會使該片段與通過使用XML中的<fragment>標記添加的片段不同。片段的lifecycle methods將以與調用活動的生命週期方法幾乎相同的方式進行調用。他們將在應用程序退出時處理碎片。

相關問題