UIAppearance – Personalizzare l’aspetto dell’applicazione

Il protocollo UIAppearance introdotto con iOS 5 si usa per personalizzare l’aspetto di istanze di una classe inviando messaggi di modifica. Ci sono due modi per personalizzare l’aspetto degli oggetti: per tutte le istanze, e per le istanze contenute all’interno di un’istanza di una classe contenitore. Se vedete la documentazione Apple ci sono solo due metodi di classe :

Per vedere le sue potenzialità creiamo un progetto semplice View-Based-Application e nello storyboard inseriamo degli oggetti : UIToolBar (mettiamolo in basso), UISwitch, UISlider, UISegmentControl. Inseriamo anche un UINavigationController come  rootViewController. Adesso per modificare l’aspetto di tutti gli oggetti andiamo nel AppDelegate.m ne metodo

[code lang=”obj-c”]-(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions[/code]

e inseriamo questi metodi:

[code lang=”obj-c”]
[[UINavigationBar appearance] setTintColor:[UIColor yellowColor]];

[[UIToolbar appearance] setTintColor:[UIColor redColor]];

[[UIBarButtonItem appearance] setTintColor:[UIColor grayColor]];

[[UISlider appearance] setMaximumTrackTintColor:[UIColor blueColor]];

[[UISlider appearance] setMinimumTrackTintColor:[UIColor redColor]];

[[UISwitch appearance] setOnTintColor:[UIColor greenColor]];

[[UISegmentedControl appearance] setTintColor:[UIColor blackColor]];
[/code]

Come vedete abbiamo modificato i colori degli oggetti, per vedere basta testare l’app.

Praticamente adesso in tutte le viste che inserite questi tipi di oggetti verrano modificato allo stesso modo.
Schermata 05-2456415 alle 17.39.59

download codice sorgente