リンクを含む UIWebView があります。「mailto」を含むリンクを除き、これらのリンクはアプリ内の別のビューで開く必要があります。これを実現するために、UIWebViews デリゲート内で次のコードを使用しています。
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
if (navigationType == UIWebViewNavigationTypeLinkClicked)
{
NSRange mailPos = [[[request URL] absoluteString] rangeOfString:@"mailto:"];
if (mailPos.location == NSNotFound)
{
self.parent.browserView.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
[self.parent.setupViewC presentModalViewController:self.parent.browserView animated:TRUE];
[self.parent.browserView.wvMainView loadRequest:request];
}
else [[UIApplication sharedApplication] openURL:request.URL];
return FALSE;
}
return TRUE;
}
これは、シミュレーターと iPhone では問題なく動作しますが、iPod ではまったく動作しません。リンクをクリックしても、iPod Touch では何も起こりません。
通話中
[self.parent.browserView.wvMainView loadRequest:request];
ただし、UIButton をクリックすると機能します。では、UIWebView 内のリンクを iPod でも機能させる方法はありますか?