【发布时间】:2009-08-07 09:34:34
【问题描述】:
我的应用程序中有一个 UIWebView,用于提供网页浏览功能。
我的工具栏上有一个按钮,可以调用
-(void)stopLoading;
在 UIWebView 上。这样做的问题是,当这个方法被发送到 web 视图时,delegate 会收到
- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error;
消息。此调用附带的错误是:无法完成操作。 (NSURLErrorDomain 错误 -999。)
我还使用 didFailLoad 消息来判断页面是否实际加载失败 - 在这种情况下,我会向用户显示一个 html 格式的消息,以便向他们传达这个失败。
所以问题在于,如果用户点击停止按钮,则会显示错误页面,而不仅仅是显示在停止之前加载的页面的任何部分。
我曾希望 NSError.h 包含我可以比较的错误代码的枚举 - 但似乎我必须根据我对日志中出现的错误代码的观察来制作自己的 - 这不太理想,因为它们将来可能会改变......
任何建议都会很棒,谢谢。
【问题讨论】:
-
当 stopLoading 被调用时,在控制器中切换一个用户特别要求停止页面加载的标志。在您的委托方法中检查此标志并继续。
标签: iphone objective-c uikit uiwebview nserror