【发布时间】:2018-07-13 19:05:23
【问题描述】:
我正在加载带有 标签的本地 html,例如:
< img class="icon" src="data:image/png;base64,/9j/4AAQSkZJRgABAQEAlgCWAAD/7gAOQWRvYmUAZAAAAAAA/...
但是,如何检测图像是否已完全加载?我用这个来检测。但是,它似乎不起作用。有时图像已加载,有时未加载。
-(void)webView:(WKWebView *)webView didFinishNavigation:(WKNavigation *)navigation{
if (webView.isLoading) return;
..
//proceed to load the second html
}
更新:
我在 didFinishNavigation 委托中添加了延迟,图像加载完美:
-(void)webView:(WKWebView *)webView didFinishNavigation:(WKNavigation *)navigation{
if (webView.isLoading) return;
double delayInSeconds = 3.0;
dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, (int64_t)(delayInSeconds * NSEC_PER_SEC));
dispatch_after(popTime, dispatch_get_main_queue(), ^(void){
NSLog(@"Do some work");
});
}
但是,这是一个临时解决方案。有没有更好的解决方案?
【问题讨论】:
-
你可以参考这个帖子:stackoverflow.com/questions/36313253/…
-
是的,我已经在使用 webView:didFinishNavigation: 来检测。但是,它是在base64图像加载之后触发还是之前触发?
标签: ios objective-c