我的网页上有1000个图像和值。每当我将页面加载到UIWebView时,它都会加载值,但由于有这么多的图片需要时间下载。将网页加载到UIwebview中,但来自本地的图像
所以有什么办法,我可以从网站下载页面,但从本地图像。
任何帮助真的很感激。
谢谢
安基塔
我的网页上有1000个图像和值。每当我将页面加载到UIWebView时,它都会加载值,但由于有这么多的图片需要时间下载。将网页加载到UIwebview中,但来自本地的图像
所以有什么办法,我可以从网站下载页面,但从本地图像。
任何帮助真的很感激。
谢谢
安基塔
如果你的网络服务器,从和图像在本地
HTML
yourBaseURL = [[NSURL页头] initFileURLWithPath:[一个NSBundle mainBundle] bundlePath];
[webView的loadHTMLString:@ “YourHTML” 基本URL:yourBaseURL]
和你的HTML包含存储像
图片代码像本地图像的名称 - > imgage SRC ='fig1.jpg width = 150 height = 150 align =“left”
比这应该工作。
不完全按照您的要求,虽然这样你可以在webView中加载本地图像。
我没有完全明白这一点。每当我把东西放入loadHTMLString它是否取代来自基地网址的东西?你能解释一下吗? – Anks 2011-04-13 10:59:22
基本上是:从服务器
下载HTML。
NSURL *URL = [[NSURL alloc] initWithString:@"http://www.example.com/page.php"];
NSError *error = nil;
NSStringEncoding encoding;
NSString *theSource = [[NSString alloc] initWithContentsOfURL:URL usedEncoding:&encoding error:&error];
将文件引用替换为本地加载图像。
请注意双斜线,这似乎很重要。
// Replace:
<img src="File.png">
// By something like:
<img src="file://Path//To//Resources//File.png">
的详细信息如何做到这一点(检查由Joe D'安德烈后):
Link to resources inside WebView - iPhone
最后做出一个UIWebView加载HTML:
[webView loadHTMLString:htmlString baseURL:baseURL];
现在应该加载来自服务器的“新鲜”HTML与本地图像。
你不觉得它将需要相同的时间来给源代码或在webview中加载页面吗?因为我们无论如何ping服务器来获取HTML文件,我们将再次ping通加载webview。 – Anks 2011-04-13 10:42:55
我只是回答你在哪里询问。 UIWebView通常:下载源代码=>渲染=>下载其他文件=>显示。在这种情况下:下载源=>更改源=>渲染=>加载本地文件=>显示。 “源代码编辑”步骤没有任何显着差异,只是几个字符串替换。所以(实际上)对性能没有影响,并节省下载时间。 **注意:**您不会'ping'UIWebView,只能手动传递源代码。 **注意**:更好地获取XML格式的数据到iPhone而不是刮掉网站,或者它不是你的服务器? – Anne 2011-04-14 10:47:00
这对我来说很好。
NSURL *myBaseURL = [[NSURL alloc] initFileURLWithPath:[[NSBundle mainBundle] bundlePath]];
NSString *myString = [[managedObject valueForKey:@"long_presentation"] stringByReplacingOccurrencesOfString:@"/FooFolder/BarFolder" withString:[NSString stringWithFormat:@"%@/FooFolder/BarFolder", [[NSBundle mainBundle] bundlePath] ] ];
[attractionWebView loadHTMLString:myString baseURL:myBaseURL];
我必须包括对图像源
img src="FooFolder/BarFolder/my_image.jpg" ...
得到正确的道路的替代品。
可以请你给我详细一点.. – ajay 2011-04-13 10:21:37
让我知道你需要什么细节?在简单的例子中,我可以说我有页面google.com,我希望它的图像从本地和所有其他网页加载从URL http://www.google.com加载。合理? – Anks 2011-04-13 10:33:40