UIWebView получить прикосновение пользователя по ссылке

Я хочу выполнить какое-либо действие, когда пользователь нажимает на любую ссылку UIWebView, Я делаю это для того, чтобы сделать эту работу:

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
    NSLog(@"request - %@", request.URL.absoluteString);
    [webView.window makeKeyAndVisible];
    [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:YES];
    if(isFirstTimeLoaded)
    {
        [self shoToolbar];
        [self updateButtons];
    }


    return YES;
}  

- (void)webViewDidFinishLoad:(UIWebView *)webView
{   
    isFirstTimeLoaded = YES;
}

Это обычно работает нормально. Но это не когда UIWebViewПервая загрузка предполагает многократное перенаправление при загрузке страницы. Я хочу, чтобы это условие выполнялось только тогда, когда пользователь намеренно нажимает на ссылку. Не на URL перенаправления UIWebView,

1 ответ

Решение

Вы должны проверить навигациюТип

    - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
    {

        if (navigationType==UIWebViewNavigationTypeLinkClicked) {
            // It was a link
        } else {
           // It wasn't a link
        }


        return YES;
    } 
Другие вопросы по тегам