1.只设置约束宽度,不设置preferredMaxLayoutWidth 且numberOfLine = 0; UILable 高度正常,宽度显示按照约束的宽度大小。
//1.只设置约束宽度,不设置preferredMaxLayoutWidth 且numberOfLine = 0;
_myLabel.text = @"在消除编译警告的时候,发现一个叫做Automatic Preferred Max Layout Width is not available on iOS versions prior to 8.0,几番探索终于发现是一个UILabel的";
image.png
2.只设置preferredMaxLayoutWidth,UILabel高度正常,宽度按照preferredMaxLayoutWidth宽度显示。
//2.只设置preferredMaxLayoutWidth
_myLabel.preferredMaxLayoutWidth = 100;
image.png
3. 同时设置 preferrredMaxLayoutWidth 和 约束宽度(能计算出的)
- preferredMaxLayoutWidth < 约束的宽度时, 计算出的行高大约实际高度
2)preferredMaxLayoutWidth > 约束的宽度是,计算出的行高小于实际高度
image.png总结
如果UILable的高度约束没有设置,则UILabel的高度计算是有preferredMaxLayoutWidth计算来决定的, 但是并不影响控件的实际宽度
网友评论