iOS:设置UILabel行距实例

    //创建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;

你可能感兴趣的:(ios)