您的位置:首页 > 产品设计 > UI/UE

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

2016-07-03 13:42 375 查看
在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;


上面就是一个代码片段,大家可以参考,根据自己的需要设置其他的风格,后面我会补充他们的封装类。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息