当一个控制器中使用了多个scrollview类的时候可能会出现以下的情况,例如:
(1)在控制器中使用了多个scrollview的时候有时候会发现会出现一段空的区域。
(2)第一tableView个frame(0,0,320,568),另一个也frame(0,0,320,568),结果会发现第二个tableView的第一行数据被导航栏遮挡了,以至于我们不得已把第二个frame改成(0,64,320,568-64)。
如下图的情况,设置self.automaticallyAdjustsScrollViewInsets = NO;就可以解决,禁止自动调整
解决方案:当我们一个界面有多个scrollview之类的,要将它设置为NO,完全由自己手动来布局,就不会错乱了。
官方文档说明:
此属性为iOS 7.0后增加的属性。
一个布尔值,指示视图控制器是否应自动调整其滚动视图内边距。
此属性的默认值是YES,它可以让容器视图控制器知道自己应该调整该视图控制器的滚动视图占一个状态栏,搜索栏,导航栏,工具栏或标签栏消耗的屏幕区域。如果你的视图控制器实现管理自己的滚动视图插图的调整将此属性设置为NO。