Ho bisogno di accedere a UITabBarController e alla seconda delle sue sottoview da AppDelegate.UISplitview: accesso a UITabBarController da appDelegate
Questo è quello che ho provato in 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)")
Arresto anomalo dell'applicazione, lamenta che tabController è pari a zero. Se i rimuovere il controller UINavigation dalla storyboard, l'UITabBarController si accede facilmente con:
let tabController = splitViewController.viewControllers.first as! UITabBarController
Qual è il modo corretto per accedere ai childcontrollers del UITabBarController, dove un UISplitView è la radice?
Perché si dispone di un controller di navigazione seguita da un controller della barra delle linguette? Potresti spiegare come vorresti che fosse la navigazione della tua app? –
Mi dispiace, non ho mostrato l'intero storyboard. Le viste collegate al tabbarcontroller sono le visualizzazioni delle tabelle, che ha segeus in dettaglioViewController (splitview detailviewcontroller). Se rimuovo UINavigationController, le viste dettagliate non avranno più la barra di navigazione con pulsanti e pulsante indietro diversi. –