iOS 开发自动布局:
iOS 开发主流布局开源库,Swift 主要是 SnapKit,OC 是 Masonry。
Auto Layout 通过确定界面各个元素之间相互的关系来进行布局。每条关系就是一条约束。一个元素被确定,他的约束表示为一个一次函数。
VFL
Visual Format Language ,是一种通过字符串创建约束的方式。
学习VFL的优点:
- Xcode 控制台输出的约束信息就是VFL语法,如果对这种语法很熟悉,对调试约束有很大帮助;
- 一次可以表示几个item在一个方向上的约束关系,可以同时创建几个约束;
- 在这种语法限制下只能创建出有效的约束。
缺点:
- VFL 语法适合表述平面关系的约束,对于一些约束比如比例约束就爱莫能助了;
- 字符串方式,编译器不能检查,只能在运行时调试约束。
Auto layout 发展:
iOS 7 和 IOS 8 设置约束上没有太大的变化, iOS 9 苹果推出了 Layout Anchors 新的API来创建约束。