ios导航栏backgroundimage

时间:2012-11-15 21:08:22

标签: iphone ios uinavigationbar

我有以下代码可以在导航栏上设置背景图像。

    if ([self.navigationController.navigationBar respondsToSelector:@selector(setBackgroundImage:forBarMetrics:)] )
    {
        [self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"navigation-bar-background"] forBarMetrics:UIBarMetricsDefault];
    }
    else
        NSLog(@"WTF");

它可以在iPad上运行,但不适用于iPhone,在iPhone上它可以记录WTF .....相同的结果没有if语句。 我的iPhone是运行ios 6.0的iPhone 4,iPad是带有ios 6.0的iPad 2

感谢任何帮助。

谢谢,

1 个答案:

答案 0 :(得分:0)

您可以尝试这种替代旧方法

@implementation UINavigationBar (CustomImage)

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

@end