risposta

4

Questo è tutto very well documented here. Non dovrebbe importare dove viene creata l'istanza UITabBarController, UIApplicationDelegate o no. In poche parole, crea tutti i rispettivi UIViewController e aggiungili a un array. Quindi assegna quell'array alla proprietà viewControllers di UITabBarController. Quindi puoi semplicemente fare qualcosa come [window addSubview:myTabBarController.view].

Sono solo copiare/incollare dalla documentazione qui:

Non si dovrebbe mai accedere alla scheda bar vista di un controller barra delle schede direttamente. Per configurare le schede di una barra delle schede del controller , si assegnano i controller di vista che forniscono la vista radice per ogni scheda alla proprietà viewControllers . L'ordine con cui è specificare i controller di vista determina l'ordine in cui sono visualizzati nella barra delle schede. Quando si imposta questa proprietà, è necessario assegnare anche un valore alla proprietà SelectedViewController per indicare quale vista è selezionato inizialmente il controller . (È possibile anche selezionare Visualizza controllori da indice di matrice utilizzando la proprietà selectedIndex .) Quando si incorpora la scheda bar vista del controller (ottenuta mediante la proprietà vista ereditata ) nella finestra dell'applicazione , il controller bar scheda seleziona automaticamente che visualizza il controller e visualizza i suoi contenuti , ridimensionandoli secondo necessità a adattandoli all'interfaccia barra delle linguette.

+0

Come posso accedere alla finestra da un UIViewController? –

+1

[[UIApplication sharedApplication] keyWindow]. Se hai diverse finestre, dovrai usare le [[UIApplication sharedApplication] windows]. – randombits

2

Here's one attuazione UITabBarController inizializzato in un UIViewController.

L'autore ha anche pubblicato un collegamento github al progetto xcode.

Problemi correlati