我正在尝试为 webView 实现停止重新加载按钮。这是我的代码:
- (IBAction)stopOrReloadButtonClick:(id)sender {
if (self.webView.loading) {
[self.webView stopLoading];
}
else {
[self.webView reload];
}
}
和委托方法:
- (void)webViewDidStartLoad:(UIWebView *)webView {
if (indicator != nil && indicator.isAnimating == NO) {
[indicator startAnimating];
}
[self.stopReloadButton setImage:[UIImage imageNamed:@"Stop.png"] forState:UIControlStateNormal];
}
- (void)webViewDidFinishLoad:(UIWebView *)webView {
[self.stopReloadButton setImage:[UIImage imageNamed:@"Refresh.png"] forState:UIControlStateNormal];
[self setNavigationButtonsState];
[indicator stopAnimating];
}
如您所见,功能如下:如果 webView 已加载内容,则按钮为“圆角箭头”。如果按下 webView 会重新加载当前页面并将按钮图像更改为“交叉”,这意味着停止重新加载。如果按下它应该停止重新加载页面。当 webView 完成加载图像时,图像再次变为“圆角箭头”。所以问题是,如果我在 webView 加载内容时按“停止”,则不会调用相应的委托方法 - (void)webViewDidFinishLoad:(UIWebView *)webView。为什么 ?以及如何实现这样的功能?