HTML-ссылки не открываются на iPod Touch

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


person Konrad Hahn    schedule 10.03.2010    source источник
comment
У iPod есть учетная запись электронной почты, настроенная в приложении «Почта»? Я не уверен, что это помешает вам открыть mailto: url с помощью метода openURL, но это далеко не так.   -  person Jasarien    schedule 10.03.2010
comment
думал о том же. +1 за Джасариена   -  person Andiih    schedule 10.03.2010
comment
Я не уверен в настройке учетной записи электронной почты, но обычные http-ссылки также не работают на iPod. На моем тестовом iPhone без каких-либо настроенных почтовых аккаунтов и почта, и стандартные http-ссылки открываются без проблем. Я протестировал его на 4 iPhone и 2 iPod до сих пор - оба iPod не открывают ни одной ссылки из моего UIWebView, все iPhone открывают все ссылки.   -  person Konrad Hahn    schedule 11.03.2010


Ответы (1)


Попробуйте запустить [[UIApplication sharedApplication] openURL:request.URL]; в основной теме

в противном случае попробуйте следующее

[самостоятельно выполнитьSelectorOnMainThread:.....];

person Biranchi    schedule 30.06.2010