从main文件开始说起程序启动分为两类:1.有storyboard 2.没有storyboard
(一)有storyboard情况下:
1.main函数
2.UIApplicationMain
- 创建
UIApplication对象 - 创建
UIApplication的delegate对象
3.根据Info.plist获得最主要storyboard的文件名,加载最主要的storyboard(有storyboard)
- 创建
UIWindow - 创建和设置
UIWindow的rootViewController - 显示窗口
(二)没有storyboard情况下:
1.main函数
2.UIApplicationMain
- 创建
UIApplication对象 - 创建
UIApplication的delegate对象
3.delegate对象开始处理(监听)系统事件(没有storyboard)
- 程序启动完毕的时候, 就会调用代理的
application:didFinishLaunchingWithOptions:方法 - 在
application:didFinishLaunchingWithOptions:中创建UIWindow - 创建和设置
UIWindow的rootViewController - 显示窗口