Potrzebuję dostępu do UITabBarController, a drugi z jego subviews z appDelegate.UISplitview: dostęp UITabBarController z appDelegate
To co próbowałem w applicationDidEnterBackground:
let splitViewController = self.window!.rootViewController as! UISplitViewController
let leftNavController = splitViewController.viewControllers.first as! UINavigationController
let tabController = leftNavController.tabBarController! as UITabBarController
let controllers : Array = tabController.viewControllers!
print("viewcontrollers \(controllers)")
Aplikacja ulega awarii, twierdząc, że tabController jest zerowa. Jeśli usunąć kontroler UINavigation z ujęć The UITabBarController jest łatwo dostępny z:
let tabController = splitViewController.viewControllers.first as! UITabBarController
Co to jest poprawny sposób uzyskać dostęp do childcontrollers z UITabBarController, gdzie UISplitView jest korzeniem?
Dlaczego masz kontroler nawigacji po przez kontroler paska kart? Czy możesz wyjaśnić, jak chcesz wyglądać w aplikacji? –
Przykro mi, nie pokazałem całego storyboardu. Widoki połączone z tabbarcontroller są widokami tabeli, które mają segeus do detailViewController (splitview detailviewcontroller). Po usunięciu UINavigationController, widoki szczegółowe nie będą już miały pasek nawigacji z różnymi przyciskami i przycisk Wstecz. –