IT虾米网

iOS设置UILabel行距实例详解

qq123 2018年06月24日 手机开发 263 0
这个方法不仅可以设置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;  

发布评论

分享到:

IT虾米网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!

iOS NSFileManeger 计算文件是否超时,和计算文件夹下文件的总大小详解
你是第一个吃螃蟹的人
发表评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。