iOS7的UI改动,老的项目放到iOS7上运行,出现的问题,特别是NavigationBar。存在NavigationBar与UIViewController重叠问题。
发现iOS7的视图有个边缘延伸的属性:edgesForExtendLayout,其默认值是UIExtendedEdgeAll。只要将其改为UIExtendedEdgeNone即可,要注意的是在iOS7以下版本会出现这个bug,所以在UIViewController的viewDidLoad里加上下面代码就完美解决了这个问题。
if([[[UIDevice currentDevice] systemVersion] double] >= 7.0){
self.edgesForExtendedLayout = UIRectEdgeNone;
}