NSAttributeString和NSMutableAttributeString

UIFontDescriptor *bodyFontDescriptor = [UIFontDescriptor preferredFontDescriptorWithTextStyle:UIFontTextStyleBody];self.textView.font = [UIFont fontWithDescriptor:bodyFontDescriptor size:0];self.textView.textColor = [UIColor blackColor];self.textView.backgroundColor = [UIColor whiteColor];self.textView.scrollEnabled = YES;// Let's modify some of the attributes of the attributed string.// You can modify these attributes yourself to get a better feel for what they do.// Note that the initial text is visible in the storyboard.//全文行距20NSMutableAttributedString *attributedText = [[NSMutableAttributedString alloc] initWithAttributedString:[[NSAttributedString alloc]initWithString:self.textView.text attributes:@{NSBaselineOffsetAttributeName:@(20)}]];NSString *text = self.textView.text;// Find the range of each element to modify.NSRange boldRange = [text rangeOfString:NSLocalizedString(@"bold", nil)];NSRange highlightedRange = [text rangeOfString:NSLocalizedString(@"highlighted", nil)];NSRange underlinedRange = [text rangeOfString:NSLocalizedString(@"underlined", nil)];NSRange tintedRange = [text rangeOfString:NSLocalizedString(@"tinted", nil)];NSRange linkRange = [text rangeOfString:NSLocalizedString(@"linkToMyblog", nil)];// Add bold. 粗体UIFontDescriptor *boldFontDescriptor = [self.textView.font.fontDescriptor fontDescriptorWithSymbolicTraits:UIFontDescriptorTraitBold];UIFont *boldFont = [UIFont fontWithDescriptor:boldFontDescriptor size:0];[attributedText addAttribute:NSFontAttributeName value:boldFont range:boldRange];// Add highlight. 高亮[attributedText addAttribute:NSBackgroundColorAttributeName value:[UIColor aapl_applicationGreenColor] range:highlightedRange];// Add underline. 下划线[attributedText addAttribute:NSUnderlineStyleAttributeName value:@(NSUnderlineStyleSingle) range:underlinedRange];// Add tint.字体颜色[attributedText addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:tintedRange];//URL链接NSURL *linkUrl = [NSURL URLWithString:@""];[attributedText addAttribute:NSLinkAttributeName value:linkUrl range:linkRange];// Add an image attachment.增加附件NSTextAttachment *textAttachment = [[NSTextAttachment alloc] init];UIImage *image = [UIImage imageNamed:@"ask"];textAttachment.image = image;textAttachment.bounds = CGRectMake(0, 0, image.size.width, image.size.height);NSAttributedString *textAttachmentString = [NSAttributedString attributedStringWithAttachment:textAttachment];[attributedText appendAttributedString:textAttachmentString];self.textView.attributedText = attributedText;

效果图:

,积极思考造成积极人生,消极思考造成消极人生。

NSAttributeString和NSMutableAttributeString

相关文章:

你感兴趣的文章:

标签云: