A Boolean value that determines whether the view’s autoresizing
mask is translated into Auto Layout constraints.
一个布尔值,用于确定视图的自动调整掩码是否被转换为自动布局约束。
如果是YES(默认是YES),系统会使用view的autoresizing mask来生成约束,这时如果再对view设置约束就会产生约束冲突。因此,如果要对一个view使用auto layout就必须先把这个属性设置为NO。IB中视图的这个属性默认是NO。
An integer bit mask that determines how the receiver resizes itself
when its superview’s bounds change.
这个属性是用来决定一个view怎么相应它的superview的改变。默认是UIViewAutoresizingNone,也就是子视图不随着父视图的改变而改变。
另外,在AutoLayout出现之前,iOS一直是使用autoresizing mask来进行布局的,autolayout的优势在于:
- AutoLayout可以指定任意两个view的相对位置,而不需要像Autoresizing Mask那样需要两个view在直系的view hierarchy中。
- AutoLayout不必须指定相等关系的约束,它可以指定非相等约束(大于或者小于等);而Autoresizing Mask所能做的布局只能是相等条件的。
- AutoLayout可以指定约束的优先级,计算frame时将优先按照满足优先级高的条件进行计算。
-
Intrinsic Content Size
Intrinsic Content Size是视图更适合显示的特定内容的大小。比如UILabel会根据文字内容自动设置大小、UIImageView会根据图片自动设置大小。因此在设置这类视图约束的时候可以不设置宽高,只设置位置,然后放入填充物(文字、图片。。。)。