У меня есть 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?