UIWebView显示本地图像和Facebook评论

我在UIWebView上面临一个问题。 我有一个WebView显示一个HTMLstring。 这个htmlstring包含:

  • HTML文本
  • 本地图片
  • FB:评论

起初,我只有Html +本地图像,所以我使用的是众所周知的方法:

NSString *path = [[NSBundle mainBundle] bundlePath]; NSURL *baseURL = [NSURL fileURLWithPath:path]; [webview loadHTMLString:htmlString baseURL:baseURL]; 

一切都很完美。 但后来我不得不实施Facebook意见http://developers.facebook.com/docs/reference/plugins/comments/

由于我的旧BaseURL不工作了Facebook的我试图加载

 NSURL *baseURL = [NSURL URLWithString:@"http://www.facebook.com/"]; 

这使得我的脸书工作,但本地图像不显示在web视图,即使绝对path。

任何帮助将不胜感激。 谢谢你的时间

有一个解决scheme,使用base64编码的图像数据而不是url的img标签。 这不应该是一个问题,因为你有本地的图像,请参阅html 示例 。

要快速testing您可以使用在线编码服务 (50kb限制)

原来的答案在这里


截断的base64样本供将来参考:

 <html> <body> <div id="fb-root"></div> FB1 <script> window.fbAsyncInit = function() { FB.init({ appId : null, channelUrl : null, status : true, cookie : true, xfbml : true }); }; (function(d){ var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0]; if (d.getElementById(id)) {return;} js = d.createElement('script'); js.id = id; js.async = true; js.src = "//connect.facebook.net/en_US/all.js"; ref.parentNode.insertBefore(js, ref); }(document)); </script> FB2 <img src="data:image/png;base64,iVBORw0KGgoAAAANSUh......lAmeQ/IAAAAASUVORK5CYII=" alt="Screen Shot 2012-05-23 at 6.53.28 AM.png" /> <div class="fb-comments" data-href="http://facebook.com" data-num-posts="2" data-width="470"></div> </body> </html>