Pregunta

i quieren fondo barra de cambio de navegación usando mi propia imagen, pero yo realmente no sé qué hacer. yo estaba buscarla en Google, pero algunas muestras digo en plantilla navigationbar. mi solicitud es una base de vista dividida. ¿Cómo podría hacer eso ??

¿Fue útil?

Solución

Si desea cambiar el fondo de la barra de navegación que también sin el uso de la categoría, esto podría ser útil para dar esa sensación, ver si cumple con sus necesidades:

- (void)viewDidLoad {
    [super viewDidLoad];

        UIView *v = [[UIView alloc] initWithFrame:CGRectMake(0.0, 0.0, 320.0, 44.0)];
        //here for v, width= navBar width and height=navBar height

    [v setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"a.png"]]];

    [self.view addSubview:v];

    [v release];

    [self.navigationController.navigationBar setBackgroundColor:[UIColor clearColor]];

    [self.navigationController.navigationBar setBarStyle:UIBarStyleBlackTranslucent];
}

Otros consejos

#import "ImageViewController.h"

@implementation UINavigationBar (CustomImage)

- (void)drawRect:(CGRect)rect {
    UIImage *image = [UIImage imageNamed:@"background.png"];
    [image drawInRect:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height)];
}

@end
implement this code in your .m file


@implementation ImageViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    self.navigationController.navigationBar.tintColor = [UIColor blackColor];
    UIImageView *backGroundView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"background.png"]];
    [self.navigationController.navigationBar insertSubview:backGroundView atIndex:0];
    [backGroundView release];
}

@end

Puede agregar la imagen directamente en el fondo de la barra de navegación con el siguiente código

[navigation_bar setBackgroundImage:[UIImage imageNamed:@"image.jpg"] forBarMetrics:UIBarMetricsDefault];

Para añadir una imagen de fondo a UINavigationBar, es necesario crear una categoría que se extiende UINavigationBar. Sólo tiene que encontrar el código de abajo dado y agregarlo a su archivo de aplicación.

@implementation UINavigationBar (CustomImage)
- (void)drawRect:(CGRect)rect {
UIImage *image = [UIImage imageNamed: @"background.png"];
[image drawInRect:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height)];
}
@end

Después de su aplicación .. se le puede llamar en cualquier lugar dentro de su uso y se puede ver el cambio en todas las vistas. No se olvide de añadir una imagen a la carpeta de recursos.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top