这个方法不仅可以设置Label行距,也可以设置自适应高度
//创建UILabel UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(7, 5, TABLEVIEW_WIDTH - HEADIMGVIEW_HEIGHT - 20 - 24 - 20, 0)]; //自动换行 label.numberOfLines = 0; //设置label内容宽度 CGFloat textWidth = 414; //获取数据 NSString *text = model.content; //创建NSMutableAttributedString实例,并将text传入 NSMutableAttributedString *attStr = [[NSMutableAttributedString alloc]initWithString:text]; //创建NSMutableParagraphStyle实例 NSMutableParagraphStyle *style = [[NSMutableParagraphStyle alloc]init]; //设置行距 [style setLineSpacing:10.0f]; //判断内容长度是否大于Label内容宽度,如果不大于,则设置内容宽度为行宽(内容如果小于行宽,Label长度太短,如果Label有背景颜色,将影响布局效果) NSInteger leng = textWidth; if (attStr.length < textWidth) { leng = attStr.length; } //根据给定长度与style设置attStr式样 [attStr addAttribute:NSParagraphStyleAttributeName value:style range:NSMakeRange(0, leng)]; //Label获取attStr式样 label.attributedText = attStr; //Label自适应大小 [label sizeToFit]; //设置Label高度 label.height = label.frame.size.height;
原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/tech/app/5152.html