wwdc2018 快速将开发项目适配所有的ios设备
快速将开发项目适配所有的ios设备
Session 235: UIKit: Apps for Every Size and Shape
https://juejin.im/post/5b1a9e32518825137e13ac3e
其实本Session 并没有提出任何新的属性和方法,最新的属性在iOS11 SDK 中就已经提出来了。可能很多开发者,在适配iPhone X 的时候遇到的问题也都解决的差不多了。但个人认为这个Session 还是很有必要的,它将现有的用于适配开发的UIKit SDK 进行了归纳总结,这将有助于开发者进一步了解这些属性之间的关联关系对快速适配多种尺寸设备的项目开发会有很大帮助。
现如今苹果的移动设备已经不像初代的时候只有一种分辨率尺寸。iOS12 支持包括iPhone5s、iPhone8、iPhone8 Plus、iPhone X、iPad 等各种尺寸的设备。相信一定有许多开发者对多设备的适配开发有过困扰,本Session 对快速适配所有型号iOS 移动设备的开发方法进行了介绍。下面介绍的属性和方法可以让开发者用最短的时间让开发项目适配苹果全系列移动设备,同时还保证了用户体验不会受到影响。
主要内容
1.Safe area and layout margins(安全区域和布局边距)
1.1安全区域
Safe Area在iOS11 中被提出,它是一个非常重要的属性。相信大多数开发者对这个属性已经并不陌生,Safe Area的提出主要是为了适配像iPhone X 一样的全面屏。我们可以通过 UIView的 safeAreaInsets和 safeAreaLayoutGuide属性来确定安全区域,同时安全区域限制了视图的可见部分
1.1.1安全区域具有传递性
1.1.2可扩展安全区域
1.2布局边距
1.2.1安全区域和布局边距协同作用。
1.3布局之子试图传播
1.4最小边距
2.scroll views
2.1废弃Automatic Content Inset
ios11之后废除的
3.编写自适应的应用程序
3.1隐藏status bar
想要隐藏status bar,只有在iPhone X 上面同时隐藏 navigationBar 和 status bar