解决“带有导航控制器中加入UIScrollView后,UIScrollView向下偏移问题”

一、问题描述

       如果在带有导航控制器的控制器中加入UIScrollView,我们可以发现UIScrollView的高度自动增加了64(正好是一个导航栏加上状态栏高度),然后在UIScrollView在加子视图,会造成子视图显示向下偏移了64的高度,如下图:

效果图:

 

二、解决方法

方法一:在控制器viewDidLoad方法中加入  self.automaticallyAdjustsScrollViewInsets = NO;

  看这个UIViewController的这个属性你就明白了,此属性默认为YES,这样UIViewController下如果只有一个UIScollView或者其子类,那么会自动留出空白,让scollview滚动经过各种bar下面时能隐约看到内容。但是每个UIViewController只能有唯一一个UIScollView或者其子类,如果超过一个,需要将此属性设置为NO,自己去控制留白以及坐标问题。

或在IB中把automaticallyAdjustsScrollViewInsets勾选去掉,如图:

 

方法二:在控制器viewDidLoad方法中加入 self.navigationController.navigationBar.translucent = NO;

或是在IB中,设置导航控制器的导航条的translucent属性,如图:

效果图:

其他解决方法就不补充,选择何种解决方案看需求~~~

转载于:https://www.cnblogs.com/LyChen/p/5015324.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值