UIScrollView自动向下偏移的问题
2016-04-02 本文已影响2379人
Simba_LX
- 之前写了一个自定义分段选择的控件,该控件基本实现原理是先自定义一个UIView,然后在view中添加一个UIScrollView实现选择滑动的效果。但是发现添加到viewController后不显示。
查过资料后发现是automaticallyAdjustsScrollViewInsets属性在搞鬼。
下面是官方文档中的描述
automaticallyAdjustsScrollViewInsets
Specifies whether or not the view controller should automatically adjust its scroll view insets.
@property(nonatomic, assign) BOOL automaticallyAdjustsScrollViewInsets
Discussion
Default value is YES, which allows the view controller to adjust its scroll view insets in response to the screen areas consumed by the status bar, navigation bar, and toolbar or tab bar. Set toNO if you want to manage scroll view inset adjustments yourself, such as when there is more than one scroll view in the view hierarchy.
Availability
Available in iOS 7.0 and later.
Declared In
UIViewController.h
- 简单点说就是automaticallyAdjustsScrollViewInsets根据按所在界面的status bar,navigationbar,与tabbar的高度,自动调整scrollview的 inset,默认为yes。设置为no,不让viewController调整,我们自己修改布局。
self.automaticallyAdjustsScrollViewInsets=NO;
- 当视图里面第一个添加的控件是UIScrollView时也会自动调整,所以也可以在自定义控件中先创建一个UIView。