iOS translucent 坐标的问题

self.navigationController.navigationBar.translucent = YES;(导航条半透明)时,布局的扩展边界,从哪里开始布局受self.edgesForExtendedLayout属性的影响,

当self.edgesForExtendedLayout = UIRectEdgeNone;时self.view会避开一切系统的bar,不会占满整个屏幕
当self.edgesForExtendedLayout = UIRectEdgeAll;时,self.view会延伸到系统bar下面,占满整个屏幕,由于bar半透明可以隐约看到self.view或者其子视图的颜色透上来


self.navigationController.navigationBar.translucent = NO;(导航条不透明)时,self.view是否占满屏幕受到两个属性的影响:self.edgesForExtendedLayout和self.extendedLayoutIncludesOpaqueBars

只有两个同时满足时才会占满整个屏幕(self.extendedLayoutIncludesOpaqueBars = YES && self.edgesForExtendedLayout = UIRectEdgeAll;)

至于
automaticallyAdjustsScrollViewInsets的目的是为了避免系统bar遮挡了要显示的view,所以设置为YES时也只在self.view延伸到bar下面的时候并且子视图里有滚动视图的时候才有用,系统可以把滚动视图contentInset某一个值设置为bar的高度一致(自行学习contentInset属性),相当于对滚动进行了填充避免被遮挡要显示的内容。

参考
参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值