今天,要來介紹Fragment(片段),它是Activity中的一部分,一個Activity可能有數個Fragment,每頁Fragment都擁有自己的生命周期跟監聽事件,它必須依賴Activity,所以說Activity的生命週期會直接影響到Fragment的生命週期。
那至於生命週期是什麼呢?舉個例子就是,當我正在打這篇文的時候,我也能夠邊聽音樂,我們的手機記憶體都有一定的容量,當我們多執行一程式,就會消耗一些記憶體,若同時執行太多時,則會造成系統變得緩慢,我們可能都有相同的經驗過,因此系統中才加入了生命週期,提供了幾種對應的Callback程式,簡化了流程。
介紹各個生命週期函式的功用:
1.onCreate():這是最常在我們的程式碼中看到的,功能為初始化頁面,是開啟應用程式的第一個流程。
2.onStart():是負責將頁面可視化,並且讓物件初始化以便使用者使用,
3.onReStart():這算是當我們重新從別的地方跳回這個程式時會呼叫這個函式,想像成重新開啟程式。
4.onResume():這是應用程式還在執行中,且不斷的跟使用者互動,值到切換不同程式。
5.onPause():當使用者離開頁面時,會將資料暫時保存,以便回來之後繼續使用,例如:當我們可能用音樂程式播音樂時,點進Youtube想看影片或突然有來電,那音樂程式就會暫停播音樂的動作。
6.onStop():想讓Activity變得不可見時,就使用該方法。
7.onDestroy():當使用者關閉應用程式就會進入這時期。
簡單說明常見的流程
一般啟動:
onCreate() -> onStart() -> onResume()
結束:
onPause()-> onStop()->onDestroy()
呼叫另一個應用程式:
onPause(1)-> onCreate(2) -> onStart(2) -> onResume(2) > onStop()
以上這些文字敘述,會在下一篇透過實際操作來表現。