Mam program z kontrolerem nawigacyjnym i domyślnym kontrolerem RootViewController. Gdybym nic zrobić programowo, aplikacja uruchomi się i RootViewController działa jak oczekuję, takich jak to, co poniżej storyboard oznacza:Ustawianie RootViewController z UINavigationController Programowo
problem, który mam jest przez wprowadzenie opcjonalnego Rozpocznij ViewController. Czego chcę to: Moim AppDelegate (didFinishLaunchingWithOptions), chcę mieć kod jak poniżej:
UIViewController *viewController = [storyboard instantiateViewControllerWithIdentifier:@"OptionalStartViewController"];
self.window.rootViewController = viewController;
[self.window makeKeyAndVisible];
Aby najpierw pokazać Opcjonalne Rozpocznij ViewController. Następnie, po zakończeniu przez użytkownika opcjonalnego kontrolera viewcontroller, mogą one następnie wyświetlić RootViewController.
Więc w opcjonalnym start ViewController dodałem kod tak, aby pokazać Korzeń Zobacz Kontroler:
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle: nil];
UIViewController *viewController = [storyboard instantiateViewControllerWithIdentifier:@"RootViewController"];
[self appDelegate].window.rootViewController = viewController;
[[self appDelegate].window makeKeyAndVisible];
To wszystko działa wyjątkiem RootViewController, gdy widać, nie ma Sterowanie nawigacją zgodnie z oczekiwaniami (tzn. widok jest wyświetlany bez elementów sterujących nawigacji).
Ja również próbowałem poniższy kod (używając UINavigationController zamiast ViewController) z tymi samymi wynikami ...
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"Main" bundle: nil];
UINavigationController *viewController = [storyboard instantiateViewControllerWithIdentifier:@"HomeViewController"];
[self appDelegate].window.rootViewController = viewController;
[[self appDelegate].window makeKeyAndVisible];
jeden inny skręt ... nie mogło być kilka opcjonalnych kontrolerów widoku początek.
Wszelkie pomysły?
Tak więc problem jest taki, że NAVIGA pasek nie ma? – gabbler
Użyj identyfikatora 'UINavigationController' zamiast' UIViewController' (kontroler widoku root). – n00bProgrammer
Właśnie zredagowałem oryginalne pytanie, aby odzwierciedlić ... – Adam