在使用storyboard布局界面的时候,nav的使用极为常见,当需要使用scrollView布局界面的时候,有时会出现如下的显示情况。
出现这样的原因是检测到有nav后,对scrollView中的所有的控件自动往下偏移64,以确保navBar不会遮挡住内容的显示。
解决这样的问题在控制器中设置如下代码即可运行结果正常:
self.automaticallyAdjustsScrollViewInsets = NO;
但是...看着非常别扭....有没有只在storyboard中设置就看起来并且运行都能正常的办法呢?
方案一:修改Top约束
在布局scrollView的时候,top相对于View进行设置,而不是TopLayoutGuide。这样scrollView的起始Y则为0,系统自动偏移后则正好露出内容。
方案二:调整属性
先选择控制器,点属性现象卡,去掉勾选Adjust Scroll View Inserts即可。
方案三:修改scrollView的层级
只需不把scrollView设置为第一个子控件即可。