ローカルファイルを読み込んでいます:
[web loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:[[NSBundle mainBundle]
pathForResource:@"about" ofType:@"html"]isDirectory:NO]]];
そして、次を使用してサファリで、このファイル内の外部リンクを開こうとしています:
-(BOOL) webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType {
NSURL *url = [request URL];
if ([[url scheme] isEqualToString:@"http"] || [[url scheme] isEqualToString:@"https"]) {
[[UIApplication sharedApplication] openURL:url];
return NO;
} else
return YES;
}
しかし、これは決して呼び出されません。読んでみると、shouldStartLoadWithRequest がローカル ファイルから呼び出されないことがわかりますが、外部リンクを開くときにこれを呼び出す必要がありますか?
web.delegate = self; の追加。
viewDidLoad に修正しました。おっと