添加了一个导航条之后,view被导航条给[覆盖了,并没有从导航条的下面开始。在iOS7中,UIViewController引入了一个新的属性:edgesForExtendedLayout。 这个属性的默认值是UIRectEdgeAll。当你的容器是UINavigationController的时候,默认的布局就是从状态栏的顶部开始的。这就是为什么你设置的控件都往上漂移的原因。
有两种方法解决这个问题:
1、设置edgesForExtendedLayout
self.edgesForExtendedLayout =UIRectEdgeNone;//view不需要拓展到整个屏幕
2、设置导航条的透明度
self.navigationController.navigationBar.translucent= NO;
网友评论