iOS开发--automaticallyAdjustsScrollViewInsets设置无效

导航视图内Push进来的以ScrollView为主View的视图,会默认向下偏移。

当项目不需要自动为下移时,可设置:

self.automaticallyAdjustsScrollViewInsets = NO;// 自动滚动调整,默认为YES

但是iOS11以后,会突然发现,也?明明设置了automaticallyAdjustsScrollViewInsets,为什么还是莫名其妙偏移了呢?
这是因为iOS 11为UIScrollView 添加了新的属性UIScrollViewContentInsetAdjustmentBehavior 这个枚举


image.png

automatic 和scrollableAxes一样,scrollView会自动计算和适应顶部和底部的内边距并且在scrollView 不可滚动时,也会设置内边距.
scrollableAxes 自动计算内边距.
never不计算内边距
always 根据safeAreaInsets 计算内边距

很显然,我们这里要设置为UIScrollViewContentInsetAdjustmentNever从不自动调整

    if (@available(iOS 11.0, *)) {

        Scrollview.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;

    } else {

        // Fallback on earlier versions

    }

你可能感兴趣的:(iOS开发--automaticallyAdjustsScrollViewInsets设置无效)