要实现navigationBar的背景自定义图片,是直接定义一个UINavigationBar的category,并重写drawRect方法,在ios5下面,navigationBar的drawRect方法似乎都不被调用了。
解决方法是:在入口类 didFinishLaunchingWithOptions方法中,加入
[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"xxx.png"] forBarMetrics:UIBarMetricsDefault];
附IOS5以下版本修改UINavigationBar方法
////顶部导航1像素背景平铺
@interface UINavigationBar(Customized)
@end
@implementation UINavigationBar(customImage)
-(void)drawRect:(CGRect)rect{
UIImage *backgroundImage = [UIImage imageNamed:@"背景.png"];
[backgroundImage drawInRect:CGRectMake(0, 0, 320, 44)];
}
@end