下面簡要介紹一下ios應用的5種狀態。
· not running(非執行狀態)。應用沒有執行或被系統終止。
· inactive(前台非活動狀態)。應用正在進入前台狀態,但是還不能接受事件處理。
· active(前台活動狀態)。應用進入前台狀態,能接受事件處理。
· background(後台狀態)。應用進入後台後,執行能夠執行的**。如果有可執行的**,就會執行**,如果沒有可執行的**或者將可執行的**執行完畢,應用會馬上進入掛起狀態。
· suspended(掛起狀態)。處於掛起的應用進入一種「冷凍」狀態,不能執行**。如果系統記憶體不夠,應用會被終止。
方法本地通知
說明應用啟動並進行初始化時會呼叫該方法並發出通知。這個階段會例項化根檢視控制器
應用進入前台並處於活動狀態時呼叫該方法並發出通知。這個階段可以恢復ui的狀態(例如遊戲狀態等)
應用從活動狀態進入到非活動狀態時呼叫該方法並發出通知。這個階段可以儲存ui的狀態(例如遊戲狀態等)
應用進入後台時呼叫該方法並發出通知。這個階段可以儲存使用者資料,釋放一些資源(例如釋放資料庫資源等)
應用進入到前台,但是還沒有處於活動狀態時呼叫該方法並發出通知。這個階段可以恢復使用者資料
應用被終止時呼叫該方法並發出通知,但記憶體清除時除外。這個階段釋放一些資源,也可以儲存使用者資料
IOS生命週期
uiviewcontroller的生命週期 關於viewdidunload 在發生記憶體警告的時候如果本檢視不是當前螢幕上正在顯示的檢視的話,viewdidunload將會被執行,本檢視的所有子檢視將被銷毀,以釋放記憶體,此時開發者需要手動對viewload viewdidload中建立的物件釋放記...
iOS 生命週期
在init方法中例項化必要的物件 遵從lazyload思想 init方法中初始化viewcontroller本身 當view需要被展示而它卻是nil時,viewcontroller會呼叫該方法。不要直接呼叫該方法。如果手工維護views,必須過載重寫該方法 如果使用ib維護views,必須不能過載重...
iOS 生命週期
物件的生命週期一直是開發者所需要關心的,教授 cs193p 的老師 paul 也詳細的講述了 uiviewcontroller 的生命週期。為了記述這一過程,故作此文。由於 xcode 提供了純 和 storyboard xib 同理 兩種布局 ui 的方式,因此初始化部分略有不同。為了方便觀察,我...