2

如何在UIWebView? Few Observations 中确定进度: 1. 要确定下载内容的进度,我们需要创建一个NSURLConnection对象并两次获取数据:一次使用 the UIWebView,另NSURLConnection 一次使用 2. 如果我们只获取一次数据NSURLConnection并加载 webview该数据文本/html然后该数据呈现不佳

困难:a)由于两次获取数据会大大减慢该过程,因此使用私有 api 是否可行(appstore 安全?)像这里给出的那样:https ://github.com/petr-inmite/imtwebview

b)如果我们不能,那么我们如何显示进度条?

c)还会使用镜像加载NSURLConnection进度异步下载数据吗?UIWebView两次获取数据的性能会有多糟糕?

有一些像 safari、dolphin 这样的浏览器正在显示进度条......关于如何做到这一点的任何想法?

4

1 回答 1

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];
}
于 2012-10-23T11:01:57.483 回答