2010-08-06 4 views
5

he visto hacer en algunas aplicaciones, donde la barra de navegación es en realidad más pequeño que el 44px por defecto, y hay una UIView (que tiene funcionalidad) por encima de la barra de navegación ...¿Puedes agregar una UIView arriba de una UINavigationBar?

quiero más de una imagen de fondo personalizada, que logré averiguar cómo hacer, pero no sé por dónde empezar a hacer algo como esto.

Cualquier ayuda es muy apreciada :) Marcos

Respuesta

3

encontré una especie de manera de hacer esto:

UINavigationBar *navBar = [[UINavigationBar alloc] initWithFrame: CGRectMake(0.0f, 20.0f, 320.0f, 32.0f)]; 

UIView *tempView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 20)]; 
UIImageView *back = [[UIImageView alloc] initWithImage: [UIImage imageNamed:@"logo.png"]]; 
[back setFrame: CGRectMake(0, 0, 320, 20)]; 
[tempView addSubview: back]; 
[[self view] addSubview: tempView]; 

[[self view] addSubview: navBar]; 

UINavigationItem *navItem = [[UINavigationItem alloc] initWithTitle: @"Controls"]; 
[navBar pushNavigationItem:navItem animated:NO]; 

que parece hacer el truco, aunque me parece que no puede encontrar la manera de conseguir esto 'en' la navigationController de manera que la espalda botones de trabajar, en el momento en que tengo que insertar manualmente una leftBarButtonItem en el navItem, el botón de atrás no parece mostrar ...

0

Sí se puede,

UINavigationBar *navBar = [[UINavigationBar alloc] initWithFrame: CGRectMake(0.0f, 20.0f, 320.0f, 32.0f)]; 
UIView *tempView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 20)]; 
navBar.navigationBar.layer.zPosition =-1; 
self.view insertSubview:navBar atIndex:[[self.view subviews] count]]; 
[self.view insertSubview:tempView atIndex:[[self.view subviews] count]]; 
Cuestiones relacionadas