理解 Fragment 的應用場景

cancanNQ發表於2020-10-11

Fragment是依賴與Activity而存在的,因此Activity的生命週期會直接影響到Fragment的生命週期。看圖可以得知, Fragment比Activity的生命週期多了五個回撥方法,其中onAttach()、onActivityCreated()、onDestroyView()和onDetach()都是與父Activity相關連的,OnCreateView則是用來建立Fragment自己的檢視。

一、onAttach(); 是Fragment和Activity連線的時候呼叫。
二、onActivityCreated();是Activity的檢視建立完畢後呼叫,也就是 Activity的oncreate()方法發回時呼叫。
三、onDstroyView();與onCreateView()相對應,當檢視被銷燬時呼叫。
四、onDetach();與Attach();相對應,Fragment與Activity斷開時呼叫。

Fragment的命運與它所屬的Activity是息息相關的.因此Fragment狀態轉換與它相對應的Activity狀態轉換也是密切相關的。所以當Activity處在前臺擁有焦點時,這些Fragment也是活動的。當Activity被暫停或停止,Fragment也同樣會暫停和停止。但是不管什麼觸發了Fragment的狀態轉換,都應該確保無縫的使用者體驗,當Fragment被暫停或或停止時儲存所有的UI狀態和持久化所有的資料是非常重要的.

相關文章