Как перейти к новому представлению с помощью программно созданного UINavigationController?

Я пробую много песен с этого сайта, но не получаю результата. Теперь я открываю новый вид, как это:

//(I call this code from View called MainReportView)
InfoController *info = (InfoController *)[self.storyboard instantiateViewControllerWithIdentifier:@"InfoController"];

info.login = login;
info.password = password;

[self presentViewController:info animated:YES completion:nil];

все работает хорошо, но я хочу, чтобы предыдущий просмотр был в том же состоянии, когда я вернусь к нему. Люди говорят, что используют NavigationController и нажимают на него, но это проблема. Я добавляю NavigationController в раскадровку (в MainReportView) и пытаюсь изменить код на:

 [self pushViewController:info animated:YES completion:nil];

но ничего не происходит, просмотр не открыт, пожалуйста, помогите, как я могу программно в этом коде добавить NavigationController и открыть мой InfoController нажатием? Спасибо! (Я использую Xcode 5 и iOS 7 + раскадровка)

Решение - для iOS7 используйте prepareForSegue, и этот урок

2 ответа

Решение

UIStoryboard *MainStoryboard = [UIStoryboard storyboardWithName:@"Main"
                                                         bundle: nil];
InfoController *info=[MainStoryboard instantiateViewControllerWithIdentifier:@"InfoController"];
[self.navigationController pushViewController:info animated:YES completion:nil]; 

полное пошаговое руководство

Вставьте новый контроллер представления в контроллер навигации следующим образом:

InfoController *info = (InfoController *)[self.storyboard instantiateViewControllerWithIdentifier:@"InfoController"];
[self.navigationController pushViewController:info animated:YES completion:nil]; 
Другие вопросы по тегам