問題描述
xib中或者代碼加載UILabel時候,一般設(shè)置label.numberOfLines=0;
即可完成自適應(yīng)。但是當(dāng)執(zhí)行如下代碼的時候:
make.top.mas_equalTo(weightOK.mas_bottom).offset(5);
make.left.mas_equalTo(iconImage.mas_left).offset(0);
}];```
會發(fā)現(xiàn)并不能正常換行。期初懷疑是,漏加numberOfLines。加上`locationOK.numberOfLines=0;`問題依舊厨剪。
##解決辦法:
創(chuàng)建時候,加上如下代碼即可
``` locationOK.text=@“test”;
locationOK.numberOfLines=0;
locationOK.font=[UIFont systemFontOfSize:14];
locationOK.preferredMaxLayoutWidth=400;
[locationOK setContentHuggingPriority:UILayoutPriorityRequired forAxis:UILayoutConstraintAxisVertical];```
##總結(jié):
Masonry和UILabel一起使用的時候所灸,需要設(shè)置多行和換行丽惶,除了`numberOfLines`需要設(shè)置,還要注意`preferredMaxLayoutWidth`和`setContentHuggingPriority`的設(shè)置爬立,只有正確設(shè)置了這2個才能換行钾唬。也算踩了一個小坑,之前一直xib寫的侠驯。