请告别对OHAttributedLabel等第三库的依赖

在iOS6之前我们都会使用OHAttributedLabel这个开发来支持富文本以及控制字符的间距和段落的行距;在iOS6之后,系统在UILabel的控件暴露属性:attributedText和 UITextView也暴露三个属性: allowsEditingTextAttributes,attributedText,typingAttributes。

在这里我先给出UILabel的attributedText使用,后期我会补充UITextView部分的,同时提供封装的类给大家

UILabel的attributedText的关键代码:

NSString *contentString = @"长沙亚信长沙亚信长沙亚信长沙亚信长沙亚信长沙亚信长沙亚信长沙亚信长沙亚信长沙亚信长沙亚信长沙亚信长沙亚信长沙亚信长沙亚信长沙亚信";

    NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
    [paragraphStyle setLineSpacing:6.0];//调整行间距
    [paragraphStyle setFirstLineHeadIndent:30];
    [paragraphStyle setLineBreakMode:NSLineBreakByWordWrapping];
    [paragraphStyle setAlignment:NSTextAlignmentJustified];
    NSDictionary *attr1 = @{ NSFontAttributeName:[UIFont systemFontOfSize:15], NSForegroundColorAttributeName:[UIColor blackColor],NSParagraphStyleAttributeName:paragraphStyle };

    NSMutableAttributedString *attrString = [[NSMutableAttributedString alloc] initWithString:contentString];
    [attrString addAttributes:attr1 range:NSMakeRange(0, [attrString length])];

    contentLabel.attributedText = attrString;

上面就是一个代码片段,大家可以参考,根据自己的需要设置其他的风格,后面我会补充他们的封装类。

你可能感兴趣的:(iOS技术研发)