2014-09-29 136 views
2

我想要一个背景图像添加到的UINavigationBarController与iPhone UINavigationBar的背景图片6

[viewController.navigationBar setBackgroundImage:[UIImage imageNamed:@"NavBarBackground"] forBarMetrics:UIBarMetricsDefault]; 

在我的资产导航栏我有

苹果文件说,有关解决方案:

  • iPhone 5/5C/5S/6 @ X2(视网膜)
  • iPhone 6+ @ X3(视网膜HD)

  • iPhone 5(& co)的屏幕宽度为640px
  • iPhone 6的屏幕宽度为750px

如何处理iPhone 6的情况下没有另一个图像,我需要在我的setBackgroundImage方法中仅用于iPhone 6的扩展命名?

回答

2

问题是iPhone 6/iPhone 6+上的导航栏与所有其他iPhone型号相比具有不同的长宽比。 所以在这种情况下,你需要一个不同的图像集。

但是,如果图像只是一个背景颜色,我建议使用下面的代码:

[viewController.navigationBar setBackgroundImage:[self imageWithColor:[UIColor greenColor]] forBarMetrics:UIBarMetricsDefaults 

并实现以下方法:

​​3210
+1

这是在我的案件的梯度。苹果应该在像iPhone 6这样的情况下将这个案例加入像'@ x'1'@ x2R4''@ 2xR4.7'这样的图像。谢谢:) – Ludovic 2014-09-29 17:47:06