标签:
虽然6月13日WWDC2016的发布会结束了,但是本届大会的开发者session环节还在持续进行着。黑马程序员本着对技术的狂热,对学生负责的态度,仍然坚持每天对课程进行深入的研发。本文主要是黑马程序员对iOS 10 中SDK所更新的主要内容进行总结。根据黑马程序员惯例,在文章的最后,有相关相关教学视频及Demo会有分享链接,供各位下载!
1.Grand Center Dispatch
GCD 在本次一更新主要有以下内容:
?创建私有队列
?安排异步执行的工作项目(items)
?GCD能自动将工作项目使用自动释放池给包裹起来
2.Foundation
Swift的改进,表现在去掉前缀,API方法改变
单位和测量 (Units and measurements),新增以下两个相关的类:
NSISO8601DateFormatter:有关ISO8601时间戳与Date之间转换。
NSDateInterval:用来表示一个封闭的日期间隔。
3.UIPasteboard
UIPasteboard是一个通用的剪贴板(Universal Clipboard),可以在不同的苹果设备之间进行数据的复制粘贴。
UIPasteboard类,可以实现在多设备之间进行剪切复制:
UIPasteboardOption(结构体),可以控制粘贴的选项:
4.Wide Color
在 iOS 10 中苹果公司提供更加宽广的颜色,将iOS 9.3的 sRGB 提升到现在的sRGB Extention,从而使颜色的精度更高,优化界面样式。
UIColor 类的支持:
a)新增构造方法
b)图像渲染(Image Renderer)
在这之前使用UIGraphicsBeginImageContext和UIGraphicsEndImageContextde时,其问题在于只支持32位颜色和sRGB,并且开发过程中容易出错,扩展性不强。
而现在苹果提供一个新的类:UIGraphicsRenderer, 其特点如下:
?完全的色彩管理
?基于block
?拥有 image 与 PDF 的子类
?管理上下文的生命周期
5.语音识别 (Speech Recognition)
在 iOS 10 中增加语音识别的API——Speech ,其特点如下:
?可以实现连续的语音识别
?可以对语 音文件或者语音流进行识别
?最佳化自由格式的听写(可理解为多语言支持)和搜索式的字符串
6.动态类型(Dynamic Type)
主要表现为文本内容的尺寸类型特征。例如,在用户调整系统字体大小时,应用内的字体也可以随之变化。其特点如下:
?可以不用监听任何通知即可实现功能。
?支持 Extensions
?自动支持 UITextView 、UILabel及UIControl
代码实现:
7.提高可定制程度 (Improved Customization)
可以对 TabBarItem 里面的内容进行定制,比如:
?自定义 badge 的颜色和文字的属性
?自定义未选中的Tint Color
8.Peek & Pop 手势
添加对 WKWebView的支持,体现在以下几点:
?更好的控制 Peek&Pop 的行为
?自定义 viewController
?动作预览
?弹出你的app
9.刷新控件(Refresh Control)
系统自带的刷新控件支持所有的 UIScrollView 以及其子类,比如说 UICollectionView。
10.CollectionView
优化快速滚动:
?Cell的预先加载
?数据源的预先加载
?同样在 UITableView 中可用
11.UIViewPropertyAnimator
UIViewPropertyAnimator 是 iOS 10 中新增的一个执行 View 动画的类,具有以下特点:
?可中断性
?可擦除
?可反转性
?丰富的动画时间控制功能
12.UIApplication
新增了 openURL:options:completionHandler:函数以替代原有的 openURL:函数,特点如下:
?可以在异步线程中得到执行完成的回调
?会检查是否有应用支持此链接,并将结果通过回调中的参数返回
13.Core Data
在本次更新中, Core Data 最有用的更新就是提升了并发访问的性能。
14.CloudKit
本次更新CloudKit具有以下特点:
?公有的数据库
?私人的数据库
?数据记录的分享,新增UICloudSharingController
15.应用内搜索(App Search)
在 iOS 10 中,可以搜索App里面的内容,那么如何让自己的App里面的内容让 Spotlight 搜索到呢,需要做以下几件事情:
?添加 CoreSpotlightContinuation 这个key到项目的 info.plist 文件中
?实现 UIApplicationDelegate 中的一个新方法:
苹果还提供 CoreSpotlight 搜索的 API 进行搜索:
16.苹果支付(Apple Pay)
?可用于 SFSafariViewController
?可用于没有UI的extensions中
?在 iMessage 应用中也支持 ApplePay
17.桌面组件(Widgets)
在 iOS 10中,应用的组件也得到了更新,拥有 display model的概念,其表现于:
?优化了用户的交互性
?添加紧凑型与展开型的模式
另外,也可以让widget出现在锁屏的界面上。
18.用户通知(User Notifications)
一个新的通知框架(UNNotifications)应用于 iOS 10中,结合本地通知与远程通知,更易于管理,提供内容扩展,可以自定义通知内容的视图。
19.CallKit
苹果提供 Api 用于拨打电话,开发者可以将 UI 整合到系统生成的电话 App 中。此处的更新包括两个层面,一个是主动拨号的部分,允许开发者将通讯 App 的功能内建在电话 App 的“常用联络资讯”,以及“通话记录”中,方便用户通过原生电话 App,就能直接使用这些第三方功能。因此用户日后如果想拨打QQ语音通话,将不再需要打开 App,而是直接通过原声电话 App 拨打就好,并且支持 Siri,CarPlay,蓝牙等。
20.SiriKit
在 iOS 10 中,苹果开放了 Siri 的 Api,我们可以用 SiriKit 来做以下几类事情:
?语音和视频通话
?发送消息
?发送或接收付款
?搜索照片
?约车
?管理健身
21.iMessage Apps
苹果在 iOS 10 中提供 Message Extensions 的方式给 iMessage 提供多样的元素,开发者可以为 iMessage 开发扩展表情功能,还可以在 iMessage 的会话窗口中直接进行支付。
iOS10开发教程第一弹:
有关iMessage及最新Xcode改版的相关功能的课程视频下载链接如下:
http://pan.baidu.com/s/1c2t3SGS密码:
di7k
iOS10开发教程第二弹:
有关iOS 10 SDK中所更新的主要内容课程,内容包括语音识别、属性动画器等五大内容,视频下载链接如下: http://pan.baidu.com/s/1miaqPRi
标签:
原文地址:http://blog.csdn.net/itcast_cn/article/details/51697826