Self.navigationController pushViewController не работает

У меня есть приложение View с одиночным UIViewController. Затем я добавляю UITableViewController через IB, и я пытаюсь отобразить UITableViewController нажатием кнопки в UIViewController (мой основной вид). Моя кнопка нажата (IBAction) содержит следующий код, через который я пытаюсь нажать мое представление UITableViewController и отобразить его:

DataViewController *dataController = [[DataViewController alloc] initWithNibName: @"DataViewController" bundle:nil];
[self.navigationController pushViewController:dataController animated:YES];
[dataController release];

Мой DataViewController совсем не попадает в стек и отображается, Также я проверил, что в коде выше, self.navigationController=nil Вероятно, это и есть источник проблемы. Если да, то как его исправить?

Пожалуйста, помогите.

Ответ 1

Вам нужно создать UINavigationController. Свойство navigationController указывает вам, находится ли ваш DataViewController в иерархии UINavigationController; если нет (как в этом случае), свойство navigationController возвращает nil.

Ответ 2

UINavigationController *navCtrlr = [[UINavigationController alloc]initWithRootViewController:yourfirstviewController];
[self.window setRootViewController:navCtrlr];
navCtrlr.delegate = self;
navCtrlr.navigationBarHidden = YES;

Создайте навигационный контроллер в appdelegate.m, затем вы можете перейти к любому uiviewcontroller