1、- (void)applicationWillResignActive:(UIApplication *)application 說明:當應用程式將要入非活動狀態執行,在此期間,應用程式不接收消息或事件,比如來電話了 2、- (void)applicationDidBecomeActive:(U ...
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 說明:當程式將要退出是被調用,通常是用來保存數據和一些退出前的清理工作。這個需要要設置UIApplicationExitsOnSuspend的鍵值。 6、- (void)applicationDidReceiveMemoryWarning:(UIApplication *)application 說明:iPhone設備只有有限的記憶體,如果為應用程式分配了太多記憶體操作系統會終止應用程式的運行,在終止前會執行這個方法,通常可以在這裡進行記憶體清理工作防止程式被終止 7、- (void)applicationSignificantTimeChange:(UIApplication*)application 說明:當系統時間發生改變時執行 8、- (void)applicationDidFinishLaunching:(UIApplication*)application 說明:當程式載入後執行 9、- (void)application:(UIApplication)application willChangeStatusBarFrame:(CGRect)newStatusBarFrame 說明:當StatusBar框將要變化時執行 10、- (void)application:(UIApplication*)application willChangeStatusBarOrientation: (UIInterfaceOrientation)newStatusBarOrientation duration:(NSTimeInterval)duration 說明:當StatusBar框方向將要變化時執行 11、- (void)application:(UIApplication*)application didChangeStatusBarOrientation:(UIInterfaceOrientation)oldStatusBarOrientation 說明:當StatusBar框方向變化完成後執行 12、- (void)application:(UIApplication*)application didChangeSetStatusBarFrame:(CGRect)oldStatusBarFrame 說明:當StatusBar框變化完成後執行
iOS 11 與 iOS 10 之間 application 的差別
1. - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // new 控制器並push / model } 2. - (void)applicationDidBecomeActive:(UIApplication *)application { } 3. - (void)viewDidLoad { } // iOS 10 表現為1 --> 2 --> 3 // iOS 11 表現為1 --> 3 --> 2
坑爹的玩意, 給老子造成一個 bug, 告訴後人已借鑒