2013-10-22 11 views
7

Ho codice in questo modo:UIToolbar tintColor e barTintColor emette

UIView *colorView = [[UIView alloc] init]; 
colorView.frame = CGRectMake(0.0, 0.0, self.view.frame.size.width, 64.0); 
colorView.backgroundColor = [UIColor blackColor]; 
//colorView.tintColor = [UIColor blackColor]; 

UIToolbar *toolbar = [[UIToolbar alloc] init]; 
toolbar.frame = CGRectMake(0.0, 0.0, self.view.frame.size.width, 44.0); 

self.view addSubview:colorView]; 
[self.view addSubview:toolbar]; 

Perché la visualizzazione secondaria barra degli strumenti hanno un colore diverso, allora mio punto di vista? La vista appare nera e la barra degli strumenti appare grigio chiaro? C'è una sfocatura o qualcosa che lo causa?

+0

Voglio creare una barra degli strumenti di altezza 64.0 che abbia lo stesso tintColor della barra di navigazione. – cdub

+0

cosa c'è con i -1? – cdub

+0

Per impostazione predefinita, '-barStyle' per' UIToolBar' è 'Translucent light' in' iOS7'. Puoi cambiarlo in 'Translucent dark'. – Bhavin

risposta

7

Il comportamento di alcune proprietà di UINavigationBar è stato modificato da iOS 7. Ho già spiegato questa cosa nel mio Answer.

Date un'occhiata allo stile Bar per iOS 6 e iOS 7:

enter image description here


Si può notare due punti qui:

  1. È possibile modificare lo stile Bar a translucent dark anziché a translucent light (predefinito).
  2. È possibile modificare la proprietà translucent a NO da YES (impostazione predefinita).
2

provare questo codice, che vi aiuterà,

UIToolbar *toolbar = [[UIToolbar alloc] init]; 
toolbar.frame = CGRectMake(0.0, 0.0, self.view.frame.size.width, 44.0); 
toolbar.barStyle = UIBarStyleBlackTranslucent; 
toolbar.tintColor = [UIColor blackColor]; 
toolbar.alpha = 0.0; 

Modificare il tintColor e alpha base alle proprie esigenze.