UILabel如何根据富文本内容计算高度
2016-12-14 19:28
423 查看
方法1:
(第一段代码和法2第一段相同)
NSString *str = @"这是一个有关富文本的一个记录,希望能帮助一些刚刚入行不久的同行们一起进步,让大家都能躺仰的iOS代码的世界里,尽情享受";
NSMutableAttributedString *attributeString = [[NSMutableAttributedString alloc] initWithString:str];
NSMutableParagraphStyle *style = [[NSMutableParagraphStyle alloc] init];
style.lineSpacing = 10;
UIFont *font = [UIFont systemFontOfSize:20];
[attributeString addAttribute:NSParagraphStyleAttributeName value:style range:NSMakeRange(0, str.length)];
[attributeString addAttribute:NSFontAttributeName value:font range:NSMakeRange(0, str.length)];
(第一段代码和法1第一段相同)
NSString *str = @"这是一个有关富文本的一个记录,希望能帮助一些刚刚入行不久的同行们一起进步,让大家都能躺仰的iOS代码的世界里,尽情享受";
NSMutableAttributedString *attributeString = [[NSMutableAttributedString alloc] initWithString:str];
NSMutableParagraphStyle *style = [[NSMutableParagraphStyle alloc] init];
style.lineSpacing = 10;
UIFont *font = [UIFont systemFontOfSize:20];
[attributeString addAttribute:NSParagraphStyleAttributeName value:style range:NSMakeRange(0, str.length)];
[attributeString addAttribute:NSFontAttributeName value:font range:NSMakeRange(0, str.length)];
(第一段代码和法2第一段相同)
NSString *str = @"这是一个有关富文本的一个记录,希望能帮助一些刚刚入行不久的同行们一起进步,让大家都能躺仰的iOS代码的世界里,尽情享受";
NSMutableAttributedString *attributeString = [[NSMutableAttributedString alloc] initWithString:str];
NSMutableParagraphStyle *style = [[NSMutableParagraphStyle alloc] init];
style.lineSpacing = 10;
UIFont *font = [UIFont systemFontOfSize:20];
[attributeString addAttribute:NSParagraphStyleAttributeName value:style range:NSMakeRange(0, str.length)];
[attributeString addAttribute:NSFontAttributeName value:font range:NSMakeRange(0, str.length)];
NSStringDrawingOptions options = NSStringDrawingUsesLineFragmentOrigin | NSStringDrawingUsesFontLeading; CGRect labelRect = [attributeString boundingRectWithSize:CGSizeMake(688, CGFLOAT_MAX) options:options context:nil]; NSLog(@"size:%@", NSStringFromCGSize(labelRect.size)); _contentLabel.attributedText = attributeString; _contentLabel.frame = CGRectMake(40, _titleLabel.frame.size.height+_titleLabel.frame.origin.y+15, labelRect.size.width, labelRect.size.height);方法2:
(第一段代码和法1第一段相同)
NSString *str = @"这是一个有关富文本的一个记录,希望能帮助一些刚刚入行不久的同行们一起进步,让大家都能躺仰的iOS代码的世界里,尽情享受";
NSMutableAttributedString *attributeString = [[NSMutableAttributedString alloc] initWithString:str];
NSMutableParagraphStyle *style = [[NSMutableParagraphStyle alloc] init];
style.lineSpacing = 10;
UIFont *font = [UIFont systemFontOfSize:20];
[attributeString addAttribute:NSParagraphStyleAttributeName value:style range:NSMakeRange(0, str.length)];
[attributeString addAttribute:NSFontAttributeName value:font range:NSMakeRange(0, str.length)];
//1.计算label的高度 //textRect..方法可以根据指定的最大区域 //计算文本最终占据的实际的空间大小 CGRect textOfRect = [self.contentLabel textRectForBounds:CGRectMake(0, 0, 688, CGFLOAT_MAX) limitedToNumberOfLines:0]; //根据label的大小计算label的frame _contentLabel.attributedText = attributeString; _contentLabel.frame = CGRectMake(40, _titleLabel.frame.size.height+_titleLabel.frame.origin.y, textOfRect.size.width, textOfRect.size.height);
相关文章推荐
- iOS UILabel根据内容动态计算高度
- 根据文本内容自动计算文本高度
- UITextField,UITextView,UILabel 根据内容来计算高度
- 根据文本内容计算cell的高度
- 根据文本内容确定UILabel的高度
- ios开发笔记之如何让tableView根据文本内容动态改变cell的高度
- IOS计算UILabel单行高度、计算UILabel多行文本高度、宽度的技巧,根据文本的高度设置cell高度
- IOS 中UITextField,UITextView,UILabel 根据内容来计算高度
- UILabel/UITextView根据文本内容调整高度
- 设置UILabel可变高度(根据文本内容自动适应高度)
- [置顶] UILabel根据文本、字体大小计算label宽度;以及自适应高度
- 设置UILabel可变高度(根据文本内容自动适应高度)
- iOS开发之----根据文本内容和字体大小计算UILabel的size
- Jquery实现textarea根据文本内容自适应高度
- 如何使用Core Text计算一段文本绘制在屏幕上之后的高度
- 37-给UIImage,NSString添加扩展方法(根据内容拉伸图片,根据内容计算文本大小)
- iOS开发--UILabel根据内容自动调整高度
- iOS7中UILabel根据内容自动调整高度
- ios之label根据内容自适应及其计算其内容高度
- 计算NSString文本内容的高度