码迷,mamicode.com
首页 > 其他好文 > 详细

计算改变行间距的UILabel高度

时间:2016-01-06 18:10:27      阅读:149      评论:0      收藏:0      [点我收藏+]

标签:ios   uilabel   行间距   

有人碰到同样的需求吗?有什么比较好的实现吗?


一段文字 需要改变行间距 还需要计算出高度调整位置

/**
 _str :         要现实的字符串
 _font :        字体
 _labWidth :    Lab最大宽度
 _lineSpacing : 行间距
 _numberOfLines :   显示行数
 */
+(CGSize)labSizeWithStr:(NSString *)_str font:(UIFont *)_font labWidth:(int)_labWidth lineSpacing:(int)_lineSpacing numberOfLines:(int)_numberOfLines;
+(CGSize)labSizeWithStr:(NSString *)_str font:(UIFont *)_font labWidth:(int)_labWidth lineSpacing:(int)_lineSpacing numberOfLines:(int)_numberOfLines{
    
    if (!_str) {
        return CGSizeZero;
    }

    UILabel *cLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, _labWidth, 0)];
    [cLabel setFont:_font];
    [cLabel setNumberOfLines:_numberOfLines];
    
    NSMutableParagraphStyle * paragraphStyle = [[NSMutableParagraphStyle alloc] init];
    [paragraphStyle setLineSpacing:_lineSpacing];
    
    [cLabel setAttributedText:[[NSAttributedString alloc] initWithString:_str attributes:@{NSParagraphStyleAttributeName:paragraphStyle}]];
    [cLabel sizeToFit];
    
    CGSize returnSize = cLabel.size;
    cLabel = nil;
    
    return returnSize;
}


本文出自 “低调华丽” 博客,请务必保留此出处http://liyun2422.blog.51cto.com/9161506/1732186

计算改变行间距的UILabel高度

标签:ios   uilabel   行间距   

原文地址:http://liyun2422.blog.51cto.com/9161506/1732186

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!