В моем приложении в качестве корневого контроллера используется BaseViewController (NavigationController). Я обычно использую следующий код для навигации:
[self.navigationController pushViewController:childController animated:YES];
Но на одном из действий я хочу, чтобы следующий вид анимировал кнопку сверху, поэтому я использую:
[self presentModalViewController:childController animated:YES];
Пока все работает. В модальном представлении я хочу нажать еще один контроллер, но это, похоже, не работает. Я пробовал следующее:
// self.navigationController is null, so this doesn't work
[self.navigationController pushViewController:childController animated:YES];
// self.parentViewController is the BaseViewController and not null, but this
// won't work either. This also generates a warning "UIViewController' may not
// respond to '-pushViewController:animated:"
[self.parentViewController pushViewController:childController animated:YES];
В обоих случаях ничего не происходит. PushViewController отключен, пока модальное представление все еще показывает? Если так, есть ли другой способ, которым я могу:
- Анимация следующего контроллера снизу вверх
- Анимируйте следующий контроллер слева направо, как обычно, кнопкой возврата. Кнопка «Назад» должна вернуть вас к предыдущему (модальному) виду.