189 8069 5689

计算改变行间距的UILabel高度

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

成都创新互联公司是一家专注于成都做网站、网站设计、外贸营销网站建设与策划设计,高碑店网站建设哪家好?成都创新互联公司做网站,专注于网站建设十多年,网设计领域的专业建站公司;建站业务涵盖:高碑店等地区。高碑店做网站价格咨询:18982081108

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

/**
 _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;
}

分享标题:计算改变行间距的UILabel高度
分享地址:http://jkwzsj.com/article/pjpcdd.html

其他资讯