首先,对于一个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开发中的应用程序和视图控制器的生命周期有一个大概额了解。下面我将要分享两篇更加详细的文章以供大家详细的去理解这部分的相关知识
推荐细看链接一的内容,写的相当不错~~~