J'ai un UIViewController
appelé FriendsViewController
à l'intérieur d'un UINavigationController
. Et un second UIViewController
appelé FriendsDetailedViewController
. Lors de la navigation du premier contrôleur de vue au second, je souhaite appuyer par programmation sur le bouton Back
lorsque cela est nécessaire. Comment faire ça?
Utilisez simplement
[self.navigationController popViewControllerAnimated:YES]
de FriendsDetailedViewController. Votre vue apparaîtra, c'est-à-dire le comportement du bouton de retour
Si en appuyant sur le bouton "Retour" vous voulez simplement aller au contrôleur de vue précédent, vous pouvez simplement appeler:
[self.navigationController popViewControllerAnimated:YES];
Voici la méthode Swift
if let navController = self.navigationController {
navController.popViewControllerAnimated(true)
}
Voici comment je l'ai fait en Swift 3
_ = self.navigationController?.popViewController(animated: true)
_
est utilisé pour supprimer l'avertissement laid généré par XCode.
1) Lorsque vous entrez dans NavigationController actuel,
En Swift
self.navigationController?.popViewControllerAnimated(true)
Objectif C
[self.navigationController popViewControllerAnimated:YES];
2) Lorsque vous sauvegardez un autre contrôleur de navigation,
En Swift
let story = UIStoryboard(name: "Main", bundle: nil)
let pushVC = story.instantiateViewControllerWithIdentifier("PushVC")
let navigation = story.instantiateViewControllerWithIdentifier("homeNavigation") as! UINavigationController
navigation.pushViewController(pushVC!, animated: true)
Dans l'objectif C
UIStoryboard* storyboard = [UIStoryboard storyboardWithName:@"storyBoardName" bundle:nil];
pushVC* ObjectOfPushVC = [storyboard instantiateViewControllerWithIdentifier:@"pushVC"];
[self.navigationController pushViewController:ObjectOfPushVC animated:YES];