iOS程序的完整启动过程(有storyboard)

1.先执行main函数,main内部会调用UIApplicationMain函数

2.UIApplicationMain函数里面做了什么事情:
1> 创建UIApplication对象

2> 创建UIApplication的delegate对象-----AppDelegate

3> 开启一个消息循环
* 每监听到对应的系统事件时,就会通知AppDelegate

4> 为应用程序创建一个UIWindow对象(继承自UIView),设置为AppDelegate的window属性

5> 加载Info.plist文件,读取最主要storyboard文件的名称

6> 加载最主要的storyboard文件,创建白色箭头所指的控制器对象

7> 并且设置第6步创建的控制器为UIWindow的rootViewController属性(根控制器)

8> 展示UIWindow,展示之前会将添加rootViewController的view到UIWindow上面(在这一步才会创建控制器的view)
[window addSubview: window.rootViewControler.view];

原文地址:https://www.cnblogs.com/iyou/p/4805863.html