Я использую следующую функцию для перемещения назад к предыдущему контроллеруПеремещение Назад к предыдущему контроллеру
- (void) onBack:(id) sender {
[[self navigationController] popViewControllerAnimated:NO];
}
Она работает нормально в нормальной ситуации, но проблема возникает, когда я Гото более 1 ViewController.
Если я перехожу от Viewcontroller1 к ViewController2 затем Viewcontroller3
От Viewcontroller3 если я нажимаю BackButton, речь идет о ViewController2, еще раз, если я Гото ViewController3 и вернуться к Viewcontroller2. Из ViewController2, если я нажму кнопку назад, он должен перейти в ViewController1, вместо этого он будет ViewController3
Может ли кто-нибудь помочь мне решить эту проблему.
Я использую следующий код для перехода от одного контроллера к другому (только один образец)
[[NSNotificationCenter defaultCenter] addObserverForName:NotificationEditProfile
object:nil
queue:[NSOperationQueue mainQueue]
usingBlock:^(NSNotification *notification) {
HUEditProfileViewController *editHUProfileViewController = [[HUEditProfileViewController alloc] initWithNibName:@"EditProfileView" bundle:nil];
editHUProfileViewController.isLocationEnabled = true;
[_navigationController pushViewController:editHUProfileViewController animated:NO];
}];
если вы хотите, чтобы вернуться к 1, вы можете использовать: popToRootViewControllerAnimated из любых. – SeanLintern88
Это, безусловно, невозможно, вы должны менять навигационный стек где-то посередине, пожалуйста, дважды проверьте свою реализацию. –
- ваш встроенный контроллер навигации –