在iOS 5中自定义UINavigationBar的奇怪行为

时间:2012-11-03 14:11:38

标签: ios5 uinavigationcontroller ios6 uinavigationbar uiappearance

这是一个非常奇怪的iOS 5行为(在iOS 6中也是如此)。我正在使用UIImage自定义UINavigationBar的外观,如下所示。 UIImage used to customize the UINavigationBar 应用程序启动时使用以下代码:

// Customize the UINavigation and UITabbar appearance here
[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed:@"NavigationTitleBackground.png"]
                              forBarMetrics:UIBarMetricsDefault];
[[UITabBar appearance] setBackgroundImage:[UIImage imageNamed:@"CustomTabbar.png"]];

最终结果是我对UITabbar项目的前4个选项卡的期望,如下所示: A Tabbar selected

照明来自应用程序的顶部。但是,当选择“更多”选项卡和所有其他部分时,UINavigationBar外观会颠倒颠倒:

Flipped upside down image

有人知道为什么吗?可能是什么原因造成的?如果仔细观察,我正在使用的UIImage实际上是颠倒翻转以获得所需的结果......但是当选择更多UITabbar项目和下一部分时,它会显示为实际上在.png文件中但这不是理想的结果,因为我来自应用程序的顶部。

1 个答案:

答案 0 :(得分:0)

我很乐意回答你的问题,但是当我用您使用过的图像创建一个新项目时,我会得到我期望的结果。所有五个UINavigationController的UINavigationBar都具有与您拥有的图像完全相同的背景。

如果您想要从顶部发出光线,您应该垂直反射用于定制的图像。