iOS lable文字字未占满一行就换行
我们在使用lable时,当设置换行后,发现有时候文字并未达到lable宽的边界处就换行了,有时候这个并不影响布局,但如果想要修改的话,也是可以的。
解决方法就是:使用富文本显示,并添加设置要求
UILabel *conLab = [[UILabel alloc] initWithFrame:CGRectMake(20, 30 , 40, 30)];
//设置换行
conLab.numberOfLines = 0;
[self.view addSubview:conLab];
//使用富文本,防止文本未满一行就换行的问题。
NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
paragraphStyle.lineBreakMode = NSLineBreakByCharWrapping;
NSDictionary *attributes = @{NSParagraphStyleAttributeName:paragraphStyle};
conLab.attributedText = [[NSAttributedString alloc] initWithString:@"在 iPhone 14 Pro 系列中初次亮相的打孔屏与灵动岛功能,大概率会直接沿用至 iPhone 15 标准版机型,成为 iPhone 15 系列的标配。" attributes:attributes];
//自适应宽高
[conLab sizeToFit];
iOS 获取lable的每行文字的高度
每行文字的高度:CGFloat lineHeight = label.font.lineHeight;