来自文件的预格式化 UITextView 内容
Posted
技术标签:
【中文标题】来自文件的预格式化 UITextView 内容【英文标题】:Pre-formatted UITextView content from file 【发布时间】:2020-01-28 12:24:57 【问题描述】:我有一个应该在 UITextView 中显示的文本文件。我想添加对文本格式的支持,例如粗体。
是否可以在文件中定义这些格式选项并将其加载到 NSAttributedString 中?到目前为止,我发现的所有示例都将字符串的特定范围设置为例如粗体,但我想在磁盘上的文件中保留此格式选项。
换句话说 是否可以在文件中写入一些标记类型的文本并将其直接加载到 UITextView 中,同时保留文本格式。
【问题讨论】:
我们不清楚的问题。请更正确地编辑和重组它.. @dahiya_boy 我试图让它更清楚。 @7heViking - 你熟悉 html 格式吗? 【参考方案1】:将文件内容中的所有文本包含在 HTML <b></b>
标记中,并使用一些 initWithHTML:
初始化器将其加载到 NSAttributedString
中,例如
- (nullable instancetype)initWithHTML:(NSData *)data documentAttributes:(NSDictionary<NSAttributedStringDocumentAttributeKey, id> * _Nullable * _Nullable)dict;
【讨论】:
它引导我找到这个解决方案:[[NSAttributedString alloc] initWithData:[text dataUsingEncoding:NSUTF8StringEncoding] options:@NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType, NSCharacterEncodingDocumentAttribute: @(NSUTF8StringEncoding) documentAttributes:nil error:nil];
以上是关于来自文件的预格式化 UITextView 内容的主要内容,如果未能解决你的问题,请参考以下文章
RxSwift之UI控件UITextField与UITextView扩展的使用
如何以编程方式更新 UITextView maximumNumberOfLines 并查看 UI 更新。