我正在尝试设置UINavigationBar背景图片:
我在AppDelegate中添加:(请注意,这是一张图片)
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];
[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"general-top_bar_with_status.png"] forBarMetrics:UIBarMetricsDefault];
由于我不需要半透明,在ViewDidLoad的ViewController中我添加了:
self.navigationController.navigationBar.translucent = NO;
这是图片:
不幸的是,这就是我得到的:
如您所见,图像已向上显示。
有什么问题?
在故事板中,我为TopBar设置了一个地方 - 不透明的导航栏
答案 0 :(得分:13)
对于 iOS 7 ,您必须使用 320x64 大小的导航栏图像
答案 1 :(得分:2)
制作图片2X尺寸。名称为mynavbar@2x.png
导航栏正在调整其自身大小+状态栏大小。您可以只创建导航栏大小
640X88
导航栏+状态栏或640X128
然后
[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"mynavbar.png"] forBarMetrics:UIBarMetricsDefault];