如何确定UIWebView?
的进度
几点观察:
1.要确定下载内容的进度,我们需要制作一个NSURLConnection
对象并获取两次数据:一个使用UIWebView
,另一个使用NSURLConnection
2.如果我们只使用NSURLConnection
获取一次数据并使用该数据文本/ html加载webview,那么该数据渲染效果不佳
难点: a)由于两次获取数据可能会大大减慢进程,因此使用私有api是可行的(appstore安全吗?),如下所示:https://github.com/petr-inmite/imtwebview
b)如果我们不能,那么我们如何显示进度条?
c)还会使用NSURLConnection
镜像异步下载数据UIWebView
加载的进度?两次获取数据的性能有多糟糕?
有一些浏览器,如safari,dolphin正在显示进度条...有关如何执行此操作的任何想法???
答案 0 :(得分:1)
使用UIWebView
代表。首先将webview的委托设置为self
,然后使用这些方法。在此之前创建并添加一个微调器到视图中uiwebview的进展,例如UIActivityIndicatorView *spinner
- (void)webViewDidStartLoad:(UIWebView *)localWebView {
[ spinner performSelectorInBackground: @selector(startAnimating) withObject: nil];
}
- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error {
[ spinner performSelectorInBackground: @selector(stopAnimating) withObject: nil];
}
- (void)webViewDidFinishLoad:(UIWebView *)localWebView {
[ spinner performSelectorInBackground: @selector(stopAnimating) withObject: nil];
}