将URL从一个UIWebView传递到另一个UIWebview

时间:2010-10-15 17:06:37

标签: iphone uiwebview uinavigationcontroller

当用户单击当前UIWebView中的链接时,新视图将被推送到包含UIWebView的navigationController堆栈。我想将触及的网址传递给这个新的UIWebView。我该怎么做呢?

1 个答案:

答案 0 :(得分:3)

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;
}

然后您只需要在自定义viewcontroller中实现初始化程序:

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

然后在适当的时间加载它,例如viewDidAppear:

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