1. numberOfLines
这个大家都知道设置为0.numberOfLines = 0
2. 设置约束
比如上下左右,这里使用了SnapKit。
.snp.makeConstraints({ (make) in
make.top.equalTo(self).offset(5)
make.left.equalTo(self).offset(15)
make.bottom.equalTo(self).offset(-5)
make.right.equalTo(self).offset(-15)
})
这样是不会出现换行的,在UILabel类里面看看是否有相关属相方法,拉倒最底部发现一个属性preferredMaxLayoutWidth 看解释就是在使用约束的时候设置可计算的最大宽度就可以实现换行了。
.preferredMaxLayoutWidth = hScreenWidth-30.0
现在就ok了
注意:layout换行的计算是需要的width的,所以给出的preferredMaxLayoutWidth属性误差不要太大,否则出错。
在Swift的AutoLayout中遇到UILabel换行问题,可通过设置numberOfLines为0实现自动换行。使用SnapKit设置上下左右约束后,需设置UILabel的preferredMaxLayoutWidth属性来指定最大宽度,以确保在约束条件下正确换行。注意,preferredMaxLayoutWidth的值需尽量准确,避免因误差过大导致显示错误。

436

被折叠的 条评论
为什么被折叠?



