虽然6月13日WWDC的发布会结束了,但是本届大会的开发者session环节还在持续进行着。黑马程序员本着对技术的狂热,对学生负责的态度,仍然坚持每天对课程进行深入的研发。本文主要是黑马程序员对iOS10中SDK所更新的主要内容进行总结。根据黑马程序员惯例,在文章的最后,有相关相关教学视频及Demo会有分享链接,供各位下载!
GrandCenterDispatch1GCD在本次一更新主要有以下内容:
?创建私有队列
?安排异步执行的工作项目(items)
?GCD能自动将工作项目使用自动释放池给包裹起来
Foundation2Swift的改进,表现在去掉前缀,API方法改变
单位和测量(Unitsandmeasurements),新增以下两个相关的类:
NSISODateFormatter:有关ISO时间戳与Date之间转换。
NSDateInterval:用来表示一个封闭的日期间隔。
UIPasteboard3UIPasteboard是一个通用的剪贴板(UniversalClipboard),可以在不同的苹果设备之间进行数据的复制粘贴。
UIPasteboard类,可以实现在多设备之间进行剪切复制:
UIPasteboardOption(结构体),可以控制粘贴的选项:
WideColor4在iOS10中苹果公司提供更加宽广的颜色,将iOS9.3的sRGB提升到现在的sRGBExtention,从而使颜色的精度更高,优化界面样式。
UIColor类的支持:
a)新增构造方法
b)图像渲染(ImageRenderer)
在这之前使用UIGraphicsBeginImageContext和UIGraphicsEndImageContextde时,其问题在于只支持32位颜色和sRGB,并且开发过程中容易出错,扩展性不强。
而现在苹果提供一个新的类:UIGraphicsRenderer,其特点如下:
?完全的色彩管理
?基于block
?拥有image与PDF的子类
?管理上下文的生命周期
语音识别(SpeechRecognition)5在iOS10中增加语音识别的API——Speech,其特点如下:
?可以实现连续的语音识别
?可以对语音文件或者语音流进行识别
?最佳化自由格式的听写(可理解为多语言支持)和搜索式的字符串
动态类型(DynamicType)6主要表现为文本内容的尺寸类型特征。例如,在用户调整系统字体大小时,应用内的字体也可以随之变化。其特点如下:
?可以不用监听任何通知即可实现功能。
?支持Extensions
?自动支持UITextView、UILabel及UIControl
代码实现:
提高可定制程度(ImprovedCustomization)7可以对TabBarItem里面的内容进行定制,比如:
?自定义badge的颜色和文字的属性
?自定义未选中的TintColor
PeekPop手势8添加对WKWebView的支持,体现在以下几点:
?更好的控制PeekPop的行为
?自定义viewController
?动作预览
?弹出你的app
刷新控件(RefreshControl)9系统自带的刷新控件支持所有的UIScrollView以及其子类,比如说UICollectionView。
CollectionView10优化快速滚动:
?Cell的预先加载
?数据源的预先加载
?同样在UITableView中可用
UIViewPropertyAnimator11UIViewPropertyAnimator是iOS10中新增的一个执行View动画的类,具有以下特点:
?可中断性
?可擦除
?可反转性
?丰富的动画时间控制功能
UIApplication12新增了openURL:options: