【发布时间】:2012-05-14 08:56:20
【问题描述】:
我正在尝试为 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。为什么 ?以及如何实现这样的功能?
【问题讨论】:
标签: iphone objective-c