Это может быть более общий подход.
Создайте категорию для UINavigationBar и в файле ".h"
@interface UINavigationBar (UINavigationBarCategory)
-(void)setBackgroundImage:(UIImage*)image;
@end
и в файле ".m"
@implementation UINavigationBar (UINavigationBarCategory)
-(void)setBackgroundImage: (UIImage*)image
{
if (image)
{
UIImageView *img = [[UIImageView alloc]initWithImage: image];
aTabBarBackground.frame = CGRectMake(60,0, 200, 45);//Frame depends upon you
[self addSubview:img];
[img release];
}
}
@end
И затем из каждого 'viewwillAppear' Контроллера вы можете сделать что-то вроде этого:
[self.navigationController.navigationBar setBackgroundImage: @"abc.png"];