【发布时间】:2013-09-24 19:24:12
【问题描述】:
我的导航栏颜色在 iOS 7 中正常显示
部署 iOS 6.0,但如果系统版本为 iOS 7.0 或更高版本,则某些导航栏颜色在 iPhone 4 上无法正常显示。在 iPhone 5 上可以正常工作。
这是我的做法:
if (SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"7.0")) {
self.edgesForExtendedLayout = UIRectEdgeNone;
[self.navigationController.navigationBar setBarTintColor:[UIColor blueColor]];
[self.navigationController.navigationBar setTranslucent:YES];
}
#define SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(v) ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] != NSOrderedAscending)
也许最后一行是问题(setTranslucent),因为我听说 iPhone 4 在半透明方面存在一些问题,但我很确定您也可以在 iOS 6 中将导航栏设置为半透明。接下来将尝试摆脱它并在修复任何问题时进行更新。
编辑: 在我关闭呈现的视图控制器后,条形颜色似乎消失了。但除了 iPhone 4 之外,它并没有搞砸任何东西。
【问题讨论】:
标签: iphone uinavigationbar ios7 iphone-4 translucency