ios设置行间距和部分文本颜色
Posted ha_cjy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ios设置行间距和部分文本颜色相关的知识,希望对你有一定的参考价值。
/** * 设置行间距和字间距 * * @param lineSpace 行间距 * @param kern 字间距 * * @return 富文本 */ -(NSMutableAttributedString *)getAttributedStringWithLineSpace:(NSString *) text lineSpace:(CGFloat)lineSpace kern:(CGFloat)kern { NSMutableParagraphStyle * paragraphStyle = [NSMutableParagraphStyle new]; //调整行间距 paragraphStyle.lineSpacing= lineSpace; paragraphStyle.alignment = NSTextAlignmentLeft; paragraphStyle.lineSpacing = lineSpace; //设置行间距 paragraphStyle.firstLineHeadIndent = 30.0;//设置第一行缩进 NSDictionary*attriDict =@{NSParagraphStyleAttributeName:paragraphStyle,NSKernAttributeName:@(kern)}; NSMutableAttributedString * attributedString = [[NSMutableAttributedString alloc] initWithString:text attributes:attriDict]; return attributedString; } /** * 富文本部分字体设置颜色 * * @param text 文本 * @param highlightText 设置颜色的文本 * * @return 富文本 */ - (NSMutableAttributedString *)setupAttributeString:(NSString *)text highlightText:(NSString *)highlightText { NSRange hightlightTextRange = [text rangeOfString:highlightText]; NSMutableAttributedString *attributeStr = [[NSMutableAttributedString alloc] initWithString:text]; if (hightlightTextRange.length > 0) { [attributeStr addAttribute:NSForegroundColorAttributeName value:[HBPlistResourceUtil colorWithName:@"mainColor"] range:hightlightTextRange]; [attributeStr addAttribute:NSFontAttributeName value:[UIFont boldSystemFontOfSize:15.0f] range:hightlightTextRange]; return attributeStr; }else { return [highlightText copy]; } }
两者结合:
/** * 设置行间距、字间距和文本颜色 * * @param lineSpace 行间距 * @param kern 字间距 * @param colorText 设置颜色的文本 * * @return 富文本 */ -(NSMutableAttributedString *)getAttributedStringWithLineSpace:(NSString *) text lineSpace:(CGFloat)lineSpace kern:(CGFloat)kern colorText:(NSString *) colorText{ NSMutableParagraphStyle * paragraphStyle = [NSMutableParagraphStyle new]; //调整行间距 paragraphStyle.lineSpacing= lineSpace; paragraphStyle.alignment = NSTextAlignmentLeft; paragraphStyle.lineSpacing = lineSpace; //设置行间距 paragraphStyle.firstLineHeadIndent = 30.0;//设置第一行缩进 NSDictionary*attriDict =@{NSParagraphStyleAttributeName:paragraphStyle,NSKernAttributeName:@(kern)}; NSRange colorTextRange = [text rangeOfString:colorText]; NSMutableAttributedString *attributeStr = [[NSMutableAttributedString alloc] initWithString:text]; //设置文本颜色 [attributeStr addAttribute:NSForegroundColorAttributeName value:[HBPlistResourceUtil colorWithName:@"mainColor"] range:colorTextRange]; [attributeStr addAttribute:NSFontAttributeName value:[UIFont boldSystemFontOfSize:15.0f] range:colorTextRange]; [attributeStr addAttributes:attriDict range:NSMakeRange(0, [text length])]; return attributeStr; }
以上是关于ios设置行间距和部分文本颜色的主要内容,如果未能解决你的问题,请参考以下文章
iOS--UILabel设置行距和字间距,并根据文本计算高度
CSSCSS 文本样式 ④ ( CSS 外观属性 | color 文本颜色 | text-align 文本对齐方式 | line-height 行间距设置 | 首行缩进设置 | 文本装饰设置 )