在UIWebView中将图像嵌入UILabel中

时间:2012-06-28 15:20:21

标签: ios iphone objective-c ios5 uiwebview

我正在从json文件接收图像,标题和描述,我需要在视图上显示它。我正在使用webview,因为description属性具有链接并且是html格式,因此webview是最简单的。但是现在我需要在描述上方添加图像和标题。我知道如何单独添加图像,但我不知道如何在webview中添加所有这三个组件。有帮助吗?谢谢

NSString * myHTMLImage = @"<img src='Hop.png'>";
NSString *imagePath = [[NSBundle mainBundle] bundlePath];
NSURL *baseURL = [NSURL fileURLWithPath:imagePath];
[self.webView loadHTMLString:myHTMLImage baseURL:baseURL];

上面的代码将图像嵌入到整个webview中。

[self.webView loadHTMLString:bodyOfText baseURL:nil]; 

我需要能够执行上面的bodyOfText加载。还有一个标题。这是一个字符串。我该怎么做。

2 个答案:

答案 0 :(得分:1)

您可以通过编程方式将这些添加为UILabel子视图,也可以通过拖出标签并将其作为IBOutlets挂钩来通过故事板添加。

答案 1 :(得分:1)

您只需构建HTML字符串即可。你可以这样做:

NSString *title      = @"this is my title";
NSString *body       = [NSString stringWithFormat:@"Blah, blah, blah<p>%@<p>", self.bodyOfText.text];
NSString *bundlePath = [[NSBundle mainBundle] bundlePath];
NSString *imgPath    = [bundlePath stringByAppendingPathComponent:@"Hop.png"];
NSURL    *imgUrl     = [NSURL fileURLWithPath:imgPath];

NSString *html = [NSString stringWithFormat:
                  @"<html>"
                  "<header>"
                  "<title>%@</title>"
                  "</header>"
                  "<body>"
                  "%@"
                  "<img src=\"%@\">"
                  "</body>"
                  "</html>",
                  title, body, [imgUrl absoluteString]];

[self.webView loadHTMLString:html baseURL:nil];

我通常在src标记中构建对图像的引用,这样我就可以轻松地引用我的包中的两个图像以及同一HTML字符串中Documents文件夹中的图像。