我正在为新闻网站开发一个iOS应用程序,该应用程序从URL(JSON)获取内容。
网站上的每篇文章都有描述,其中可能包含嵌入的图像。如何在UITextView(或UILabel?)中显示嵌入的HTML图像?我找到了一个名为RichContentLabel的类,但它与iOS7 +不兼容。还有其他类似的课我可以使用吗?
这是一个包含嵌入图像的测试字符串:
<div> some text here <span> something else</span>
<img src="image source" /> something here too
</div>
答案 0 :(得分:1)
如果您不想使用UIWebView
,则需要找到一种方法从HTML字符串中获取图像的源网址。
您可以使用NSRegularExpression
执行此操作,然后将imageURL加载到UIImageView
编辑:
我使用this网站试用我的正则表达式。
NSError *error = nil;
NSString *regExPattern = @"img src=\"(.*?)\"";
NSRegularExpression *regex = [NSRegularExpression regularExpressionWithPattern:regExPattern
options:NSRegularExpressionCaseInsensitive | NSRegularExpressionDotMatchesLineSeparators
error:&error];
NSArray *matches = [regex matchesInString:HTMLString options:0 range:NSMakeRange(0, HTMLString.length)];
for (NSTextCheckingResult *result in [matches reverseObjectEnumerator])
{
NSLog(@"0 %@", [HTMLString substringWithRange:[result rangeAtIndex:0]]);
}
答案 1 :(得分:0)
您可以使用UIWebView
:
UIWebView *myWebView = [UIWebView alloc] init];
[myWebView loadHTMLString:testString baseURL:nil];