Я новичок в iOS, и я работаю с раскадровки.Stacked UINavigationController
У меня есть приложение с некоторыми видами.
My rootViewController (1) - это UINavigationController, который подключается к другим представлениям. В какой-то момент в приложении (2) я включаю компонент (SWRevealViewController, стиль боковой стороны Facebook), который является экземпляром UINavigationController, поэтому у меня есть два UINavigationControllers, вложенные друг в друга. Я хочу удалить или изменить первый UINavigationController на новый (2) и просто иметь только один. Доступ ко всем представлениям осуществляется через пользовательские сегменты.
Я считаю, что решение изменить RootViewController перед загрузкой вида (2), и установить вторую UINavigationController в качестве основного приложения.
Я попытался решить это доступ по:
[UIApplication delegate].window.rootViewController = myController;
, но у меня есть только nil
или пустое окно.
Я прочитал много пост о том, что решение может быть в моем AppDelegate в методе
- (void) applicationDidFinishLaunching: (UIApplication *) application
Я не могу понять, как применить его к моей структуре, так как этот метод вызывается, когда приложение запускается.
Я считаю, что мое приложение для работы не так.
Любая обратная связь или помощь приветствуются! Спасибо заранее.
Я попытался поставить эти утверждения в свой контроллер, но получаю черный экран: self.view.window.rootViewController = self; [self.view.window makeKeyAndVisible]; –
Кроме того, значение self.view.window.rootViewController равно null –
@FrandelaRosa Is self.view.window также null? Не должно быть, если у контроллера, у которого есть этот код, есть его вид на экране. – rdelmar