2010-10-15 5 views
0

Lorsqu'un utilisateur clique sur un lien dans le présent UIWebView, une nouvelle vue est insérée dans la pile de navigationController qui contient un UIWebView. Je voudrais passer l'URL qui a été touchée à cette nouvelle UIWebView. Comment vais-je faire cela?Passage d'une URL d'un UIWebView à un autre UIWebview

Répondre

3

Dans votre UIWebView délégué:

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

Ensuite il vous suffit de mettre en œuvre le initialiseur dans votre viewcontroller personnalisé:

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

charge Ensuite, à un moment approprié, comme viewDidAppear:

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

+1 sauf que je n'ai plus de voix en ce moment :) – Nimrod

+0

Merci, a parfaitement fonctionné. – Salsa