最新在适配业务的某个页面时,发现VC的Y方向的起始点从导航栏的下方开始,而且VC里面嵌入的tableView组件的位置也从导航栏的下方开始,但是在适配导航栏的时候发现,导航栏的背景是VC父视图的背景(导航栏有模糊效果),这就造成了在视觉上导航栏的背景与当前页的背景不一致
原来在iOS7之后,UIViewController默认为full screen,但是由于项目历史悠久,并且很多控件都是自定义的,很多原因造成了VC的Y轴起始点从导航栏下方开始,未解决这个问题,使用VC的两个属性,分别是extendedLayoutIncludesOpaqueBars和edgesForExtendedLayout来解决。
- extendedLayoutIncludesOpaqueBars默认值时NO,用于当Bar使用了不透明图片时,VC的视图是否延伸至Bar所在区域。
- edgesForExtendedLayout默认是UIRectEdgeAll,表示该VC的视图是否覆盖到四周的区域。