Как обнаружить событие щелчка в UIWebView - PullRequest
2 голосов
/ 08 февраля 2012

У меня есть UITableView, который загружает контент в UIWebView следующим образом:

//MainViewController.m
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
      CGRect bounds = [ [ UIScreen mainScreen ] applicationFrame ];
      UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:bounds];
      UIWebView *htmlView = [ [ UIWebView alloc ] initWithFrame:[scrollView bounds]];
htmlView.frame = CGRectMake(10,10,280,360);
      NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];

    //Load the request in the UIWebView.
    [htmlView loadRequest:requestObj];

    scrollView.contentSize = [htmlView bounds].size;
    [scrollView addSubview:htmlView];    
    [detailsViewController.view addSubview:htmlView];


    [htmlView release];
    htmlView = nil;

    [scrollView release];
    scrollView = nil;


   [[self navigationController] pushViewController:detailsViewController animated:YES];
   [detailsViewController release];

}

Весь удаленный контент, который передается в UIWebView, поступает из написанного мной веб-сервиса.Первый снимок экрана - это то, что отображается, когда слово выбирается из представления списка под названием «Глоссарий»

Detail view controller with UIWebView HTML content

Это все замечательно, пока вы не перейдете по ссылке, в этом случае нажав нассылка "рамка" в содержимом UIWebView.Новый контент загружается, но мне нужно сообщить на панели навигации, что UIWebView изменился, чтобы я мог по крайней мере изменить текст белого заголовка, чтобы он соответствовал новому контенту.Какие методы UIWebView я должен реализовать и куда они должны идти?

enter image description here

1 Ответ

3 голосов
/ 08 февраля 2012

Установите контроллер представления в качестве делегата UIWebView, затем реализуйте

-(BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...