Navigation Controller Back button to go to the screen before the previous screen
I'm wondering whether it's possible to go back to 2 previous page using navigation controller button. Right now, I've custom made the button using this code
self.navigationItem.leftBarButtonItem =
[[UIBarButtonItem alloc] initWithTitle:mainLib.navCountryTitle
style:UIBarButtonItemStyleBordered
target:self
action:@selector(handleBack:)];
And on 'handleback' method, I called this line
[self.navigationController popViewControllerAnimated:YES];
So in this case it will go to the previous screen. However I want to go to the screen before the previous screen.
I know that i can call t开发者_开发问答hat screen straight away, but I wouldn't want to do that because in every screen I have a back button which supposed to go to its previous screen.
You can pop to particular viewcontroller using its pushing index. If you know the syntax than you can do that like
[self.navigationController popToViewController:[self.navigationController.viewControllers objectAtIndex:indexOfViewController] animated:YES];
I believe, In your case it would be 1st Index. Though you can again change index and check.
[self.navigationController popToViewController:[self.navigationController.viewControllers objectAtIndex:1] animated:YES];
Here self.navigationController.viewControllers is the array of the all the ViewControllers pushed.
Hope it helps.
精彩评论