2

我正在使用下面的代码将 HTML 文本转换为 NSMutableAttributedString 并在 UITextView 中显示它。-

attributedStringTitle = [[NSMutableAttributedString alloc] initWithData:[titleString dataUsingEncoding:NSUnicodeStringEncoding] options:@{ NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType } documentAttributes:nil error:nil];

这适用于 iOS 7 或更高版本,但不适用于 iOS 6 .. 请帮助。

4

3 回答 3

1

根据 DocsNSHTMLTextDocumentType is only available on iOS 7 and later所以有一些你可以做的选择: -

1)为此,您可以使用3rd party Framework.

2)使用UIWebView

3)参考这个display-html-text-in-uitextview

但是,如果您只需要将 html 标签解析为字符串,那么您可以使用initWithStringapi 来解决您的问题。但在此之前,您需要使用以下方法从 NSData 创建字符串对象 str initWithData:-

- (NSString *)initWithData:(NSData *)data encoding:(NSStringEncoding)encoding;
- (id)initWithString:(NSString *)str attributes:(NSDictionary *)attrs;

注意:-以上两个api会将html标签解析为纯文本

于 2014-10-28T11:49:47.917 回答
1

NSHTMLTextDocumentType在 iOS6 中不可用:

来自苹果文档:

NSHTMLTextDocumentType 超文本标记语言 (HTML) 文档。

在 iOS 7.0 及更高版本中可用。

于 2014-10-28T11:44:40.493 回答
1

这是因为NSHTMLTextDocumentType仅适用于 iOS 7 及更高版本。在此处阅读可用常量的列表。

于 2014-10-28T11:45:31.600 回答