我有一个原生的iPhone应用程序,只使用UIWebView
加载网站。当用户尝试在没有Internet连接的情况下使用应用程序时,我实现了UIWebViewDelegate
函数didFailLoadWithError
以显示错误消息。警报框在我第一次构建和运行应用程序时显示,但此后不会显示。如果我单击主页按钮,然后再次点击我的应用程序,我只看到一个空白的UIWebView。就好像它没有再次尝试加载页面一样,所以它永远不会触发didFailLoadWithError
。这只是一个简单的应用程序,没有保存和重新加载状态,所以不应该重新加载应用程序重新运行我的所有代码,包括尝试加载网站?
- (void)viewDidLoad {
NSString* urlString = [NSString stringWithString:@"http://www.site.com"];
NSURL* url = [NSURL URLWithString:urlString];
NSURLRequest* request = [NSURLRequest requestWithURL:url];
[self.webView loadRequest:request];
[super viewDidLoad];
}
#pragma mark UIWebView delegate
- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error
{
//[myActivityIndicatorView stopAnimating];
NSLog([NSString stringWithFormat: @"%d", [error code]]);
if ([error code] != USER_STOPPED_LOAD) {
UIAlertView *alert = [[UIAlertView alloc]
initWithTitle:@"Connection Error!"
message:@"You must be connected to the Internet to use Site."
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles: nil];
[alert show];
[alert release];
}
}
答案 0 :(得分:0)
不,因为当您单击“主页”按钮时它才会被发送到后台!要重新启动应用程序,请使用多任务栏将其终止。