ios程序的运行过程

来源:互联网 发布:广联达造价软件下载 编辑:程序博客网 时间:2024/05/21 18:09

1.每一个应用程序都有属于自己的UIWindow,UIWindow继承自UIView

2.UIView面临的问题:

1>谁来控制UIView之间的切换?

2>谁来管理UIView的生命周期?

3>谁来监听UIView的事件?

上面3个问题的答案是:控制器 (UIViewController)

 

IOS程序的运行过程

1.首先执行mian函数

2.执行UIApplicationMain函数

3.UIApplicationMain函数内部

1>创建一个UIApplication实例。这个UIApplication对象是单粒的,一个ios程序对应一个UIApplication

2>UIApplication对象是应用程序的象征

3>开启消息循环(main loop)

4>再创建一个UIApplication的delegate对象,负责监听UIApplication的生命周期

5>当UIApplication的生命周期发生改变时,会给delegate发送不同的消息。

*当第一次运行程序的时候:

didFinishLaunchingWithOption(加载完毕)->

applicationDidBecomeActive(获取焦点)->

*当点击home键的时候:

applicationWillResignActive(失去焦点)->

applicationDidEnterBackground(进入后台)->

*当再次点击应用图标进入应用的时候:

applicationDidEnterForeground(进入前台)->

applicationDidBecomeActive(获取焦点)

 

 

UIApplicationMain函数的参数:

*第四个参数用来指定UIApplication的代理

*第三个参数用来指定UIApplication的类名(或者子类),如果为nil,默认就是UIApplication

原创粉丝点击