Передача URL-адреса из одного UIWebView в другой UIWebview - PullRequest
0 голосов
/ 15 октября 2010

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

1 Ответ

3 голосов
/ 15 октября 2010

В вашем UIWebView делегате:

- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType {
    if( navigationType == UIWebViewNavigationTypeLinkClicked ) {
        YourWebViewController* vc = [[YourWebViewController alloc] initWithURL:[request URL]];
        [self.navigationController pushViewController:vc animated:YES];
        [vc release];
        return NO;
    }
    return YES;
}

Тогда вам просто нужно реализовать инициализатор в вашем пользовательском контроллере вида:

- (id)initWithURL:(NSURL*)url {
    self = [super init];
    if( self ) {
        myURL = [url retain];
    }
    return self;
}

Затем загрузите его в подходящее время, например viewDidAppear:

- (void)viewDidAppear:(BOOL)animated {
    [webView loadRequest:[NSURLRequest requestWithURL:myURL]];
}
...