IOS应用程序Main函数开始焦点解说。
1.每一个应用程序都有属于自己的UIWindow,UIWindow继承自UIView
2.UIView面临的一下问题都是控制器(UIViewController)来控制。
2.1,控制UIView之间的切换
2.2,管理UIView的生命周期
2.3, 给UIView装配参数
2.4,监听UIView的事件并相应
IOS程序的运行原理
1.首先执行main函数
2.执行UIApplicationMain函数
3.UIApplicationMain函数内部
1>创建一个UIApplicationMain函数
2>UIApplication对象是应用程序的象征
3>开启一个消息循环(main loop)不断监听用户的操作。
4>再创建一个UIApplication的delegate(代理)对象,负责监听UIApplication的生命周期。
5>当UIApplication的生命周期发生变化的时候,会给delegate(代理)对象发送不同的消息
当程序第一点击运行的时候:
didFinishLaunchingWithOptins(加载完成)->
applicationDidBecomeActive(获取焦点)
当 点击HOME键时
applicationWillResignActive(失去焦点)->
applicationDidEnterBackRround(进入后台)
当再次点击应用图标重新进入应用的时候:
applicationWillEnterForeground(进入前台)->
applicationDidBecomeActice(获取焦点)
UIApplicationMain 函数(avgc,argv,NSStringFromClass([UIApplication class]),
NSStringFromClass([MJAppDelegate class]));
第三个参数传nil(空)的话默认继承如上述,用来指定UIApplication的类。
第四个参数用来指定UIApplication的代理
相关文章
- C#控制台程序,运行完窗口不退出的方法
- C程序运行的背后(2)
- uniapp小程序中Date函数的iOS兼容性
- IDEA报:mvn : 无法将“mvn”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次....问题
- python编写代码自动运行程序_利用Python编写自动打开指定软件的程序
- Windows无法识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次
- NodeJS 导入包的时候出现的 @types 错误导致程序无法运行
- Python中统计程序运行时间的几种方法
- java无法找到加载主类是什么意思,在Java程序运行时遇到的“Could not find or load main class(无法找到或者加载主类)”是什么意思?...
- 如何在64位系统中运行16位的汇编源程序