基本约束的创建
/// 构建约束
mas_makeConstraints
/// 更新约束 - 修改已经建立的约束,如果约束不存在,会在控制台输出错误
mas_updateConstraints
/// 会删除已经建立的所有约束,然后重新生成约束
mas_remakeConstraints
- 等于函数
equalTo(参照对象) // 参照属性相同可以省略
equalTo(参照对象.mas_参照属性) // 参照属性,多个视图的适配
- 偏移函数
offset(20) // 偏移量
mas_offset(结构体CGFloat) // 偏移结构体
常见约束的各种类型
/**
1.尺寸:width、height、size
2.边界:left、leading头部间隔、right、trailing尾部间隔、top上、bottom下
3.中心点:center、centerX、centerY
4.边界:edges
5.偏移量:offset、insets、sizeOffset、centerOffset
6.priority()约束优先级(0~1000),multipler乘因数, dividedBy除因数
*/
Masonry约束易忽略的技术点
使用
Masonry
不需要设置控件的translatesAutoresizingMaskIntoConstraints
属性为NO
;
防止block
中的循环引用,使用弱引用(这是错误观点),在这里block
是局部的引用,block
内部引用self
不会造成循环引用的__weak typeof (self) weakSelf = self
;(没必要的写法
- (void)demo1View{ //第一个
UIView *v1 = [[UIView alloc]init];