首先,對于一個IOS項目的執行,一般的執行流程應該是: 執行main()函數 -> 執行Appdelegate里面的函數 -> 執行ViewController里面的函數
下面主要講講Appdelegate里面幾個函數方法的順序:
1. -(void)applicationWillResignActive:(UIApplication *)application
說明:當應用程序將要入非活動狀態執行,在此期間,應用程序不接收消息或事件,比如來電話了
2. -(void)applicationDidBecomeActive:(UIApplication *)application
說明:當應用程序入活動狀態執行,這個剛好跟上面那個方法相反
3. -(void)applicationDidEnterBackground:(UIApplication *)application
說明:當程序被推送到后臺的時候調用。所以要設置后臺繼續運行,則在這個函數里面設置即可
4. -(void)applicationWillEnterForeground:(UIApplication *)application
說明:當程序從后臺將要重新回到前臺時候調用,這個剛好跟上面的那個方法相反
5. -(void)applicationWillTerminate:(UIApplication *)application
說明:當程序將要退出是被調用,通常是用來保存數據和一些退出前的清理工作。
6. -(void)applicationDidReceiveMemoryWarning:(UIApplication *)application
說明:ios設備只有有限的內存,如果為應用程序分配了太多內存操作系統會終止應用程序的運行,在終止前會執行這個方法,通常可以在這里進行內存清理工作防止程序被終止
7. -(void)applicationDidFinishLaunching:(UIApplication*)application
說明:當程序載入后執行。
8. -(BOOL)application:(UIApplication*)application handleOpenURL:(NSURL*)url
說明:當打開URL時執行
如果你對上面的函數及作用有了了解,那接下來讓我們一起看看關于視圖控制對象的生命周期:
1. init - 初始化程序
2. viewDidLoad - 加載視圖
3. viewWillAppear - UIViewController對象的視圖即將加入窗口時調用
4. viewDidApper-UIViewController對象的視圖已經加入到窗口時調用
5. viewWillDisappear-UIViewController對象的視圖即將消失、被覆蓋或是隱藏時調用
上述是對Appdelegate以及視圖控制生命周期中一些函數的作用和調用時機進行一個簡略的陳述,目的是讓大家對整個IOS開發中的應用程序和視圖控制器的生命周期有一個大概額了解。下面我將要分享兩篇更加詳細的文章以供大家詳細的去理解這部分的相關知識
推薦細看鏈接一的內容,寫的相當不錯~~~
?