iOS-自动布局技术

1.Autolayout技术

   在iOS6苹果引入自动布局技术,也成为Autolayout技术;其采用的是添加约束的方式进行布局,简单理解是将绝对布局改为相对布局。

Autolayout并非只是单纯的某一项技术,是多种技术的组合。分为三部分:

第一部分是应用层的描述部分。主要包括提供约束的各种数据类型,即为组件添加约束信息。

第二部分是解析引擎部分。Autolayout技术的核心源于Cassowary约束解析工具包,提供一套算法来解决用户界面问题。

第三部分是iOS的UI渲染系统。iOS的UI渲染系统会从底层的布局效率进行优化。

相对于绝对布局,Autolayout技术会多一些性能上的消耗,约束对象的创建和解析和Cassowary算法的执行都消耗一些时间,但是这种影响可以忽略不计;但是可以让开发者更加高效的进行页面开发,方便适配各种尺寸的设备。


2.布局计生户优缺点

NSlayoutConstraint:构造对象代码太繁琐;

使用VFL字符串生成约束对象又缺少编译时的安全检查;

因此实际开发中开发者一般都会选择SnapKit(Swift)和Masonry(OC)进行视图的自动布局。

iOS9 引入的布局锚点,布局代码的写法风格已十分接近第三方库。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容