textView中的内容富文本

2018-11-14  本文已影响0人  LetBe

今天在textview加入了大量的文字, 目标是 标题居中,内容左对齐,并且首行缩进。

首先想到的是NSMutableAttributedString,现将标题加入,再采用段落,进行居中

NSMutableAttributedString *attribute = [[NSMutableAttributedString alloc] initWithString:@"我是独一无二的\n\n"];
NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
paragraphStyle.lineSpacing = 1;// 字体的行间距
paragraphStyle.alignment = NSTextAlignmentCenter;//(两端对齐的)文本对齐方式:(左,中,右)
[attribute addAttributes:@{NSParagraphStyleAttributeName:paragraphStyle,NSFontAttributeName:[UIFont fontWithName:@"PingFangSC-Medium" size:11]}range:NSMakeRange(0, attribute.length)];

//再将内容加入到另一个attribute中(再创建一个)和 新的段落,

再将标题的 attribute 插入到 内容的前面

[secondAttribute insertAttributedString:attribute atIndex:0];
contentTextView.attributedText = secondAttribute;

//最后遇到了一个问题 就是如果内容过长的话,textview直接显示了最下面的内容,而不是从头开始

   contentTextView.layoutManager.allowsNonContiguousLayout = NO;

这段代码 可以让textView从头显示

上一篇下一篇

猜你喜欢

热点阅读