首先准备导航栏背景图片,大小 320x44, @2x文件大小640x88,iOS5之后更改背景图片较简单spa
UINavigationBar *navBar = self.navigationController.navigationBar; #define kSCNavBarImageTag 10 if ([navBar respondsToSelector:@selector(setBackgroundImage:forBarMetrics:)]) { //if iOS 5.0 and later [navBar setBackgroundImage:[UIImage imageNamed:@"navbar1.png"] forBarMetrics:UIBarMetricsDefault]; } else { UIImageView *imageView = (UIImageView *)[navBar viewWithTag:kSCNavBarImageTag]; if (imageView == nil) { imageView = [[UIImageView alloc] initWithImage: [UIImage imageNamed:@"navbar1.png"]]; [imageView setTag:kSCNavBarImageTag]; [navBar insertSubview:imageView atIndex:0]; [imageView release]; } }
更改颜色,可使用tintColor属性code
myBar.tintColor = [UIColor greenColor];