1. 每个应用程序都有属于自己的UIWindow,UIWindow继承UIView
2. UIView 面临的问题
--谁来控制UIView之间的转换
--谁来管理UIView的生命周期
--谁来给UIView装配数据
--谁来监听UIView的事件
====>是控制器: UIViewController
iOS程序的运行原理
1. 首先执行main函数
2. 执行UIApplicationMain函数
3. UIApplicationMain函数内部
--创建一个UIApplication的实例,这个UIApplication对象是单例的,一个ios程序对应一个
--UIApplication对象是应用程序的象征
--开启一个消息循环(main loop)--程序只能手动结束,本身是个循环--用来监听用户的操作
--再创建一个UIApplication的delegate对象,负责监听UIApplication的生命周期
--当UIApplication的生命周期发生改变时,会给delegate发送不同的消息
--*当第一次运行程序时:
-----didFinishLaunchingWithOptions--加载完毕
-----applicationDidBecomeActive--获取焦点
--*当点击home键时
-----applicationWillResignActive--失去焦点(程序不再可以进行操作)
-----applicationDidEnterBackground--进入后台
--*当再一次运行程序时:
-----applicationWillEnterForeground--进入前台(先保证程序显示出来)
-----applicationDidBecomeActive--获取焦点
UIApplicationMain(argc, argv, nil,NSStringFromClass([WJAppDelegateclass]));
第三个制定UIApplication 的子类或类名,nil默认时UIApplication的第四个函数制定代理
加载过程:
首先初始化一个窗口
传入主界面的文件名来初始化一个控制器
设置窗口的根控制器
窗口不会默认显示,需要调用方法
1万+

被折叠的 条评论
为什么被折叠?



