我正在尝试更改background
的{{1}}。
我已将图片放到UINavigationBar
,Images.xcassets
文件为xib
我在TableView
中写了[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"bar-background.png"] forBarMetrics:UIBarMetricsDefault];
,如下所示。
viewDidLoad
但 - (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
UIView* bview = [[UIView alloc] init];
bview.backgroundColor = [UIColor groupTableViewBackgroundColor];
//self.title = NSLocalizedString(@"WiFi Camera Viewer", nil) ;
[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"bar-background.png"] forBarMetrics:UIBarMetricsDefault];
}
未显示任何类似以下
如何在Objective-C中设置UINavigationBar的背景?
我错过了什么吗?提前谢谢。
答案 0 :(得分:3)
您使用的代码是旧的,从iOS 7开始,您可以使用下面的
[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"YourImage"] forBarMetrics:UIBarMetricsDefault];
如果您提供的图像高度为44px,它只会在没有状态栏的情况下覆盖导航栏,如果您提供高度为66px的图像,它将覆盖它们