J'ai une action "didSelectRowAtIndexPath" qui ajoute une barre de navigation et affiche une nouvelle vue. Il y a une action dans la nouvelle vue qui pousse une autre vue sur la pile de navigation, et cela fonctionne, mais cliquer sur "retour" ne restaure pas la vue précédente.Le bouton Précédent de UINavigationItem retourne à l'élément de navigation précédent, mais l'affichage ne change pas
La séquence est essentiellement:
- utilisateur clique sur la table cellule
- Barre de navigation apparaît, avec une nouvelle vue en dessous, montrant un certain HTML avec des liens
- utilisateur clique sur un lien et une nouvelle vue est ajoutée à nav, avec un bouton de retour
- utilisateur clique sur le bouton retour, nav annule correctement, mais vue ne change pas
La nouvelle vue est ajoutée en capturant un clic sur un lien comme ceci:
- (BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType {
if(navigationType == UIWebViewNavigationTypeLinkClicked) {
UINavigationItem *navigationItem = [[UINavigationItem alloc] initWithTitle:@"webpage"];
[flipsideNavigationBar pushNavigationItem:navigationItem animated:YES];
[navigationItem release];
WebViewController *viewController = [[WebViewController alloc] initWithNibName:@"webView" bundle:nil];
UIView *webPageView = self.webViewController.view;
[webPageView addSubview:viewController.view];
[webPageView insertSubview:flipsideNavigationBar aboveSubview:viewController.view];
[[viewController.view.subviews objectAtIndex:1] loadRequest:request];
[webView stopLoading];
return YES;
}
return YES;
}
Je ne sais pas ce que je fais mal; ce qui devrait arriver est le bouton "retour" devrait rejeter la vue actuelle et revenir à la précédente. Quelqu'un peut-il suggérer quelque chose à essayer?
Merci!
John
merci pour le bon info. Il a fallu un peu de réécriture, mais maintenant ça marche. – John