2012-05-05 5 views
9

Desidero modificare un'app che al momento dispone di un UITabBarController come controller di visualizzazione iniziale.Impostazione di una dimensione di progettazione personalizzata per UITabViewController (nello Storyboard)

L'obiettivo è disporre di una barra di stato personalizzata nell'area superiore dello schermo che verrà sempre visualizzata indipendentemente dalla scheda selezionata. L'attuale UITabBarController non può utilizzare l'intera altezza dello schermo:

/----------------------------\ 
|Custom Status bar (50 px) | 
|       | 
|----------------------------| 
|       | 
|----------------------------| --- 
|       | | 
|       | | 
|View of the selected tab | | 
|       | | 
|       | | 
|       | | 
|       | | 
|       | smaller height of the UITabBarController 
|       | | 
|----------------------------| | 
|Tab bar      | | 
|       | | 
\----------------------------/ --- 

Io uso storyboard. Non riesco a impostare una dimensione (di progettazione) nella finestra di Impostazioni dimensioni anche con le dimensioni delle metriche simulate impostate su "a mano libera".

+0

Hai provato a implementare il controller contenitore a livello di codice? È quindi possibile utilizzare storyboard per creare i controller di visualizzazione di ciascun pulsante di tabulazione – Dabrut

risposta

0

È possibile creare il UITabBar di programmazione in questo modo:

UITabBar *myTabBar = [[UITabBar alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, 50)]; 
[MyView addSubview:myTabBar]; 

Si dovrebbe vedere 's documentation sul tema per ulteriori informazioni sulla configurazione del UITabBar programmazione.

0

Sfortunatamente, questo non può essere fatto in uno storyboard o in uno xib.

L'unico modo per inserire un UITabBarController all'interno di un altro controller di visualizzazione è creare un controller di visualizzazione contenitore e aggiungerlo a quello in codice.

In questo caso, sarà necessario creare un nuovo UIViewController e quindi chiamare addChildViewController:childController per ciascuno dei controller di visualizzazione che si desidera visualizzare (una volta per l'intestazione e una volta per il controller della barra delle linguette).

Vedi l'L'implementazione di un sezione Contenitore View Controller della UIViewController class reference per ulteriori informazioni.