最近,我尝试实现富文本视图,以显示主题内容或回复(通常包括一些图像)等内容。我在UITableView中尝试过DTCoreText,但似乎有很多问题。
我刚刚发现自iOS 7以来,UITextView / UILabel开始支持NSAttributedText,但问题是所有图像都是同步加载的,它们会阻塞主线程。有没有办法可以异步加载它们?答案 0 :(得分:1)
NSAttributedString *attributedString = [[NSAttributedString alloc] initWithData:[htmlString dataUsingEncoding:NSUnicodeStringEncoding] options:@{ NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType } documentAttributes:nil error:nil];
在此行中,您应先将数据下载,然后再将其设置为属性字符串。
dispatch_async(dispatch_get_global_queue(0, 0), ^{
// Load Data Here.
dispatch_async(dispatch_get_main_queue(), ^{
// Create NSAttributedString and set data to it.
});
});