webView решитьPolicyForNavigationAction для открытия ссылки в браузере по умолчанию - PullRequest
0 голосов
/ 17 марта 2012

Возникли проблемы с оболочкой графического интерфейса пользователя чата в Интернете. В основном, когда кто-то публикует ссылку в чате, я хочу открыть его в браузере по умолчанию при нажатии. Я использую webkit решитьPolicyForNavigationAction.

- (void)webView:(WebView *)sender decidePolicyForNavigationAction:(NSDictionary *)actionInformation
    request:(NSURLRequest *)request frame:(WebFrame *)frame decisionListener:(id <WebPolicyDecisionListener>)listener 
{
NSString *host = [[request URL] host];

    if (![host hasSuffix:@"chatsimply.com"])
    {
        [listener ignore];
        NSWorkspace * ws = [NSWorkspace sharedWorkspace];
        [ws openURL:request.URL];
    }

        [listener use];
}

Похоже, что ссылки не отображаются в чате, и я не уверен, почему. Я без особого везения просматривал некоторые форумы и документацию Apple, поэтому любая помощь / документация о том, как с этим справиться, будет принята с благодарностью.

1 Ответ

0 голосов
/ 17 марта 2012

Если вы имели в виду открытие ссылок в Safari, то это должно сделать это.

[[UIApplication sharedApplication] openURL:request.URL];

Если ссылки не подсвечены (или что вы пытаетесь сделать), тогда я предлагаю NSLogging строку хоста, чтобы найти, имеет ли она нужный вам суффикс.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...