2012-02-25 26 views
5

he tenido el siguiente código:UINavigationBar aparición de anulación en IOS 5

[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"navbarBackBlack.png"] forBarMetrics:UIBarMetricsDefault]; 
    [[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"navbarBackBlack.png"] forBarMetrics:UIBarMetricsLandscapePhone]; 
    [[UINavigationBar appearance] setTintColor:[UIColor colorWithWhite:0.72 alpha:1.0]]; 

Pero ahora quiero tener un lugar en mi aplicación donde quiero la barra de navegación a ser de un color diferente que este color universal, I' he establecido en toda la aplicación. ¿Cómo puedo cambiar esto solo para esta configuración en particular? ¿Es posible?

Respuesta

5

También puede llamar a setBackgroundImage en la instancia de la barra de navegación.

ver este post relacionado:

Custom UITabBar background image not working in iOS 5 and later

También debe acondicionarlo de si se responde a que el selector:

if ([navBar respondsToSelector:@selector(setBackgroundImage:)]) 
{ 
    [navBar setBackgroundImage:[UIImage imageNamed:@"tabbar_brn.jpg"]]; 
} 
else 
{ 
    // ios 4 code here 
} 
+0

cómo sobre el color de la tinta? No puedo hacer eso – adit

0

Simplemente use los métodos de apariencia directamente en la instancia de la barra de navegación en lugar del objeto proxy appearance.

[navBarInstance setBackgroundImage: ... ];