版权声明:本文为延成原创文章,转载请标明出处
autoresizing
- 六根线的含义
autolayout
-
约束
- 确定控件的位置和尺寸(x,y,w,h)
-
参照
- 所添加的约束是相对于谁来说的
-
警告和错误
-
stroyboard / xib的使用
-
代码中的使用
-
使用NSLayoutCanstraint之前需要知道以下两点:
1.必须设置translatesAutoresizingMaskIntoConstraints为NO
2.如果是viewController则AutoLayout适配写在:- (void)updateViewConstraints NS_AVAILABLE_IOS(6_0);
如果是view则AutoLayout适配写在:
- (void)updateConstraints NS_AVAILABLE_IOS(6_0) NS_REQUIRES_SUPER;
/** 1.第一个参数view1:要设置的视图 2.第二个参数attr1:是个枚举,表示view1要设置的属性 3.第三个参数relation:是个枚举,表示视图view1和view2的指定属性之间的关系 4.第四个参数view2:参照的视图,可以为空 5.第五个参数attr2:是个枚举,表示view2的属性 6.第六个参数multipler:视图view1的指定属性是参照视图view2指定属性的多少倍 7.第七个参数c:视图view1的指定属性需要加的浮点数 根据参数的讲解,得出万能公式: view1.attr1 [=,>=,<=] view2.attr2 * multipler + c; */ +(instancetype)constraintWithItem:(id)view1 attribute:(NSLayoutAttribute)attr1 relatedBy:(NSLayoutRelation)relation toItem:(nullable id)view2 attribute:(NSLayoutAttribute)attr2 multiplier:(CGFloat)multiplier constant:(CGFloat)c;
-
实现方式
VFL
Masonry
-
-
其他知识
- UILabel实现包裹内容
设置宽度约束 <= 固定值
设置位置约束
不需要设置高度约束 - 约束优先级
- 修改约束
- 约束动画
- UILabel实现包裹内容