1 - (void)setupTextView
2 {
3 // 富文本技术:
4 // 1.图文混排
5 // 2.随意修改文字样式
6 // self.textView.text = @"哈哈4365746875";
7 // self.textView.textColor = [UIColor blueColor];
8 NSMutableAttributedString *string = [[NSMutableAttributedString alloc] initWithString:@"哈哈123456"];
9 // 设置“哈哈”为蓝色
10 [string addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:NSMakeRange(0, 2)];
11 [string addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:30] range:NSMakeRange(0, 2)];
12 [string addAttribute:NSBackgroundColorAttributeName value:[UIColor redColor] range:NSMakeRange(0, 2)];
13
14 // 设置“456”为红色
15 [string addAttribute:NSForegroundColorAttributeName value:[UIColor redColor] range:NSMakeRange(6, 2)];
16 [string addAttribute:NSFontAttributeName value:[UIFont boldSystemFontOfSize:24] range:NSMakeRange(6, 2)];
17 [string addAttribute:NSUnderlineStyleAttributeName value:@(NSUnderlineStyleSingle) range:NSMakeRange(6, 2)];
18
19 // 创建图片图片附件
20 NSTextAttachment *attach = [[NSTextAttachment alloc] init];
21 attach.image = [UIImage imageNamed:@"placeholderHeader"];
22 attach.bounds = CGRectMake(0, 0, 15, 15);
23 NSAttributedString *attachString = [NSAttributedString attributedStringWithAttachment:attach];
24
25
26 [string appendAttributedString:attachString];
27
28 [string appendAttributedString:[[NSAttributedString alloc] initWithString:@"789"]];
29
30 self.textView.attributedText = string;
37 }
iOS 6之前:CoreText,纯C语言,极其蛋疼
iOS 6开始:NSAttributedString,简单易用
iOS 7开始:TextKit,功能强大,简单易用