iOS 之 界面编程解析
参考:http://www.cocoachina.com/design/20151225/14789.html
0. 内容概述
-
基础与本质:说明普遍意义上的UI系统的三大模块,让读者从整体上对UI系统有清楚的认识。
-
View:深入View的内部机制,View与Layer之间的关系,以及Offscreen Render;
-
ViewController:讲解ViewController在UI系统中所扮演的角色,以及UI架构设计中ViewController运用和实践;
-
MVC、MVP、MVVM:简单分析三种主流的架构设计模式及其异同,并简单提出了一些做架构设计意见和想法;
-
总结。
1. 基础与本质
UI架构主要关注三大模块:界面布局管理,渲染及动画、事件响应。
1.1. 布局管理
我现在要多研究UIStackView,iOS没有其它的布局控件。
1.2. 渲染及动画
界面渲染到展示流程如下:
引自:WWDC2014 #419 Advanced Graphics and Animations for iOS Apps
擦考:#Objc Issue 3:Views - Getting Pixels onto the Screen
1.3. 事件响应
iOS系统将响应用户事件放在主线程的最高优先级
1.4. UI系统框架