在iOS项目研发中,从iOS7.0及以后的系统版本中,UI视图控件是不区分导航栏是否从导航栏下面开始计算y坐标显示的,所以就会造成显示异常。在纯代码编码过程中,可以通过设置这样一个属性edgesForExtendeLayout进行解决。
如下所示:
override func loadView() { super.loadView() self.view.backgroundColor = UIColor.whiteColor() // UI适配 if self.respondsToSelector(Selector("edgesForExtendedLayout")) { self.edgesForExtendedLayout = UIRectEdge.None } }
第一张图是没有添加适配代码时的显示效果,第二张图是添加了适配代码时的显示效果。