今天是2015/12/25号,自忖学习iOS开发也有一段时间了,遂写些东西梳理所学,以备遗忘或查阅;
接下来介绍一个APP启动时,内部具体代码的执行路径是怎么走的;
--->1. iOS目前以OC为主要开发语言,swift是未来iOS开发的趋势;OC 是一种在C的基础上添加runtime实现面向对象开发的开发语言,兼容C和C++混合编译;跟C语言一样,以main函数为执行入口。在main.m文件中:
return UIApplicationMain (argc, argv,nil,NSStringFromClass ( [AppDelegate class] ) );
进入AppDelegate,AppDelegate是整个APP的代理,内有关于APP各种功能状态的代理方法;你可以自定义AppDelegate文件的名字,然后再main.m里相应修参数改即可
--->2.进入AppDelegate,系统分配好各种资源和预备条件后(启动画面等等),首先执行:
- (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions ;
在这个方法里需要实例化一个UIWindow作为APP的主Window,同时在这里设置主控制器(rootViewController);这样APP便知道该显示哪个ViewController;
self.window= [[UIWindowalloc]initWithFrame:[[UIScreenmainScreen]bounds]];
self.window.backgroundColor= [UIColorwhiteColor];
self.window.rootViewController= [ViewControllernew];
[self.windowmakeKeyAndVisible];
--->3.ViewController的生命周期;依次执行下列方法;
2015-12-25 11:35:38.029 JustATest[733:161983]顺序执行到第1个viewDidLoad
2015-12-25 11:35:38.030 JustATest[733:161983]顺序执行到第2个viewWillAppear
2015-12-25 11:35:38.130 JustATest[733:161983]顺序执行到第3个viewWillLayoutSubviews
2015-12-25 11:35:38.130 JustATest[733:161983]顺序执行到第4个viewDidLayoutSubviews
添加view,进行渲染,显示view;并在合适的时机进行网络请求,DAO操作等;
至此,APP的代码执行流程就介绍完了;所学有疏,不当之处,敬请指正;
网友评论