TableView的Cell中使用UILabel展示多行时lab
2019-07-31 本文已影响0人
黑糊糊的梦想家
问题:在TableView的Cell中使用到Label控件展示多行内容时,如果使用自动布局,会发现在大于320的屏幕宽的机型上Label的高度会高于实际文字高度
原因:TableView在布局cell时,会用320.0x44.0的cell进行自动布局计算,当实际cell宽度大于320时,这种自动布局的计算就会比实际高度高,所以会出现这种情况
解决办法:
设置 label 的属性 preferredMaxLayoutWidth,给这个属性赋值为当前Label的实际宽度值,如果宽度为屏幕宽:
label.preferredMaxLayoutWidth = [UIScreen mainScreen].bounds.size.width