2010-01-04 7 views

risposta

18

Per modificare il colore di una 'visione' è necessario impostare la proprietà backgroundColor su di esso sfondo. Questo implica che puoi accedervi. Se fosse tutto in un unico controllore si sarebbe solo usare

self.view.backgroundColor = [UIColor redColor]; 

se fosse in una navigazione o simili un'applicazione basata, allora si può accedere a una vista parentViewController e cambiare il colore su di esso nel modo seguente:

self.parentViewController.view.backgroundColor = [UIColor redColor]; 

Se ciò non è possibile, è possibile impostare un iVar sul secondo controller di visualizzazione quando viene creato che contiene l'istanza del viewController su cui si desidera cambiare il colore di sfondo.

MyViewController* secondViewController = [[MyViewController alloc] init]; 
secondViewController.bgColorNeedsChangingViewController = self; 

Poi nella logica del secondViewController

self.bgColorNeedsChangingViewController.view.backgroundColor = [UIColor redColor]; 
2
UIViewController *yourVC; 
UIColor *colour = [[UIColor alloc] initWithRed: 1.0 green: 0.0 blue: 0.0 alpha: 1.0]; 
[yourVC.view.backgrounColor] = colour; 
[colour release]; 
8
UIColor *colour = [[UIColor alloc]initWithRed:57.0/255.0 green:156.0/255.0 blue:52.0/255.0 alpha:1.0]; 
self.view.backgroundColor = colour; 

Adattato dalla risposta di Frank Shearar.

0

Per cambiare il colore sfondo di una vista uso questa riga di codice

self.view.backgroundColor = UIColor (red: 1.0, green: 1.0, blue: 0.5, alpha: 1.0) 

I valori di rosso, verde, blu e alfa vari btw 0 a 1.

Si può anche scrivere come

self.view.backgroundColor = UIColor (red: 123.0/255.0, green: 200.0/255.0, blue: 90.0/255.0, alpha: 1.0) 

Questo è in tutta la gamma di colori.