iOS-导航栏下的空白位置偏移

使用导航Push进来以TableView为主的视图(继承于scroll,包括Scroll),原本我们想隐藏了导航栏将这个scroll放在坐标为(0,0)的位置,但是发现效果如下:

1、没有隐藏导航栏

     从iOS7开始,导航条和状态栏合为一体,且成为半透明状,viewController.view的坐标(0,0)点在屏幕左上方,如果子视图位置在view的顶部,就会被导航条遮盖,所以viewController仅仅会对自身的第一个子视图(scrollView)顶部添加64个像素的contentInset边距,避免scrollView内容遮盖,默认YES。我们的scroll、table会自动向下偏离Top64px(下方位置如果是tabbar向上偏离Bottom49px,toolbar是44)

 

   

self.automaticallyAdjustsScrollViewInsets = YES;

    //或者设置NO手动添加 UIEdgeInsetsMake(CGFloat top, CGFloat left, CGFloat bottom, CGFloat right)

    //table.contentInset = UIEdgeInsetsMake(64,0,0,0);

 

 

 

 

 

2、隐藏了导航栏

     但这个scroll的轮播图却依然在状态栏以下,并没有将状态栏覆盖。因为状态栏存在,即使隐藏了导航栏,scroll依然会给我们预留部分空白,所有内容向下偏移20px像素位置,当你滑动scroll时,又会将状态栏覆盖掉。此时我们需要设置:

    

self.automaticallyAdjustsScrollViewInsets = NO;

 

 

 

 

 

再运行那么scroll或者table就会紧贴着状态栏顶部,覆盖掉状态栏了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值