我有一个UIWebview正在加载一张图片。然而,当这张图片加载/渲染完成时,我想调用一个方法。
我尝试使用UIWebViewDelgate并使用了以下代码:
-(void)webViewDidFinishLoad:(UIWebView *)webView {}
然而,此方法在图像加载/渲染之前被调用。我该如何解决这个问题?任何帮助将不胜感激。
Josh
我有一个UIWebview正在加载一张图片。然而,当这张图片加载/渲染完成时,我想调用一个方法。
我尝试使用UIWebViewDelgate并使用了以下代码:
-(void)webViewDidFinishLoad:(UIWebView *)webView {}
window.location.href='myurl://imageLoaded'
,这将在webView中被拦截shouldStartLoadingRequest
。很遗憾,你提到的委托调用并不是针对每个HTTP请求而是仅针对每个页面调用。
通过子类化NSURLProtocol
,您应该能够在处理特定URL请求时得到通知。有一个相关答案描述了如何在UIWebView
中用本地图像替换远程图像。这应该可以让您了解如何实现您的NSURLProtocol
子类。