Gestire la Status Bar in iOS 7

      Nessun commento su Gestire la Status Bar in iOS 7

Uno dei principi della nuova interfaccia utente di iOS 7 è il contenuto a schermo. Per far pieno uso dello schermo, il sistema operativo si aspetta ora che la tua applicazione si estenderà anche sotto la barra di stato nella parte superiore dello schermo. Apple ha creato una nuova serie di API per permettere le applicazioni di sfruttare questa nuova funzionalità.

In primo luogo, sono andati i vecchi UIStatusBarStyleBlackOpaque e UIStatusBarStyleBlackTranslucent. Sono stati deprecati in favore di UIStatusBarStyleDefault e UIStatusBarStyleLightContent. Se avete i colori di sfondo chiari dietro la barra di stato, utilizzare UIStatusBarStyleDefault e il sistema utilizzerà un colore nero per la data, il gestore e gli altrimenti elementi della barra di stato.

Default-Navigation-Bar

Allo stesso modo se avete i colori di sfondo scuro, utilizzare UIStatusBarStyleLightContent  per impostare il colore bianco per gli elementi della barra di stato.

Dark-Navigation-Bar-Light-Status-Bar

È possibile utilizzare queste nuove UIStatusBarStyle di con i vecchi metodi su UIApplication:

[code lang=”obj-c”][UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;[/code]

Tuttavia, ci sono anche nuovi metodi su UIViewController che rendono la gestione barra di stato molto più semplice. Prima di poter gestire Status Bar Style in UIViewController, è necessario innanzitutto impostare UIViewControllerBasedStatusBarAppearance su YES nel file plist dell’applicazione. Questo dice al sistema operativo di interrogare il controller per lo stile della barra di stato, attraverso il metodo preferredStatusBarStyle. L’implementazione può essere semplice come:

[code lang=”obj-c”]
– (UIStatusBarStyle) preferredStatusBarStyle {
return UIStatusBarStyleLightContent;
}
[/code]

Se il vostro ViewController cambia in modo tale che si desidera lo stile barra di stato in modo del tutto nuovo, basta chiamare il metodo setNeedsStatusBarAppearanceUpdate del ViewController. Questo dice al sistema operativo di chiamare il metodo preferredStatusBarStyle del controller della view, dove è possibile restituire un valore in base alle modifiche.

Vale la pena notare che lo stile preferito del ViewController può anche essere gestito da XIB o file di Storyboard.

statusBar3