Вложенный ViewController (т. Е. Внутри представления, контролируемого ViewController, который фактически находится в стеке NavController), не имеет прямого доступа к UINavigationController, членом которого является родительский элемент представления представления.Это одно ГЛОТКО предложение, но смысл его таков: вы не можете добраться отсюда.
Вместо этого вам нужно попасть в NavController приложения через делегата приложения.
YourAppDelegate *del = (YourAppDelegate *)[UIApplication sharedApplication].delegate;
[del.navigationController pushViewController:nextViewController animated:YES];
Вы используете синглтон вашего UIApplication (содержит все виды полезной информации о вашем приложении), который имеет свойство .delegate, указывающее на AppDelegate, и который содержит ссылку на NavigationController.
Этотак шаблон Xcode «Приложение на основе навигации» устанавливает владение NavController в любом случае.YMMV, если вы покатили свой собственный - хотя, если бы вы сделали, вам, вероятно, не нужно будет задавать этот вопрос.