为什么设置我的UINavigationBar背景图像会影响导航栏的大小?

时间:2012-04-16 21:43:23

标签: objective-c image user-interface uinavigationbar

我正在做这样的事情:

UIImage *barBackgroundImage = [UIImage imageNamed:@"myImage.png"];
[[UINavigationBar appearance] setBackgroundImage:
                                    backgroundImage
                                   forBarMetrics:UIBarMetricsDefault];

生成的UINavigationBar比标准导航栏大得多。我知道我的图像大小可能是问题所在。有没有办法以编程方式处理这个?

2 个答案:

答案 0 :(得分:4)

这是我设置UINavigationController的{​​{1}}背景图片的方法。

navigationBar

[self.navigationController.navigationBar setBackgroundImage:[UIImage imageNamed:@"navbar.png"] forBarMetrics:UIBarMetricsDefault]; [self.navigationController.navigationBar setTintColor:LIGHTBROWN]; 分别为navbar.png320x44 640x88

答案 1 :(得分:2)

点击此链接可使您的代码与iOS4,5和6兼容:http://robert-varga.com/?p=735

您只需在Photoshop或其他软件中制作尺寸为320x44或640x88的矩形(用于视网膜显示)并将其导入您的项目