iOS layout问题整理
-
-(CGSize)systemLayoutSizeFittingSize:(CGSize)targetSize
systemLayoutSizeFittingSize: 根据当前的约束返回视图的最优大小 targetSize:获得一个视图尽可能小,指定UILayoutFittingCompressedSize不变。获得尽可能大的一个视图,指定UILayoutFittingExpandedSize不变
-
preferredMaxLayoutWidth
多线标签的首选最大宽度. 在使用systemLayoutSizeFittingSize计算动态高度时,如果是计算多行UILabel,并且width不是固定的话(自动布局适配屏幕就是不固定,写死的数值算固定),需要设置label的preferredMaxLayoutWidth属性,否则计算的结果会有偏差
-
intrinsicContentSize
固有内容大小:有些控件能通过自己显示的内容计算出需要的Size,这个自动计算出来size就叫该控件的固有内容大小。这个大小是和需要显示的内容相关的。UIButton,UILabel就是具有固有内容大小属性的控件。UIButton可以根据它的title字符串长度和需要显示的image来计算需要的Size,UILabel可以根据它的text来计算
-
Content Hugging Priority:
该优先级表示一个控件抗被拉伸的优先级。优先级越高,越不容易被拉伸,默认是251。
-
Content Compression Resistance Priority:
该优先级和上面那个优先级相对应,表示一个控件抗压缩的优先级。优先级越高,越不容易被压缩,默认是750
网友评论