金田html
北京时间9月10日凌晨, Apple在美国旧金山比尔格拉汉姆公民大礼堂(Bill Graham Civic Auditorium)召开新品发布会。本次着重介绍了3D Touch功能, 大致介绍一下:ios
- 加强版的Force Touch(压力触控)技术,Force Touch以前被应用在于Apple Watch浏览器
- 根据力度的不一样,从而带来更多样化的用户体验。好比,用力按快进按钮会使快进的速度更快、用力度触摸代替了长按拖拽选项、用力按屏幕时用户能够自行调节应用界面等app
- 在点击、滑动、缩放的基础上,为iPhone引入了两种新手势:预览(Peek)和敲击(Pop)。该功能可让图片、邮件、信息和其余内容浮到屏幕的最表面,同时使其余内容出现虚化效果。内容突出显示效果随手指按压力度变化测试
- 经过与Retina屏幕集成的电容传感器实现,能够经过检测玻璃与背光的距离感知手指力度大小ui
- 目前支持3D Touch的设备只有 iPhone 6s 和 iPhone 6s Plus,即便配有Apple Pencil的强大如iPad Pro,也是不支持。不过按照Apple一向的作法,以后再新出的增强版iPad Pro,应该是会整合该功能spa
- 3D Touch功能默认是开启的,但用户也能够在系统设置中把它关掉(Settings > General > Accessibility > 3D Touch)3d
- 支持3D Touch的最低系统要求为 iOS 9,开发人员则须要至少使用XCode 7 GM,目前的最新版为XCode 7.1 Beta调试
和开发人员关系比较密切的部分:htm
- Pressure Sensitivity:压力灵敏度,能够和绘画类及其它创做型软件结合使用,例如根据压力的大小来改变笔触/画线的粗细值。主要为UITouch类增长了一些新属性,例如estimatedProperties(触摸属性),updatedProperties(触摸对象更新)等,新增的API,主要集中在获取X/Y坐标时的精度部分,如 - PreciseLocationInView:,- PrecisePreviousLocationInView:等,有个须要特别注意的是UIForceTouchCapability,使用功能前,必须进行功能可用性检测
- Peek and Pop:新引入的手势,主要可让用户预览内容,甚至进行操做。例如Mac中的文档预览快捷键,浏览器中的快照内容等
- Quick Actions:快捷菜单,完整名称是Home Screen Quick Actions,相似于电脑中的右键菜单,主要用于快捷操做,这个从它的API名字就能够看出来:UIApplicationShortcutItem。正如Apple描述的那样,让用户使用更少的操做步骤,更快的进行他们最经常使用的操做使用,总结一句就是“一键操做”。该部分也分了2个类型:静态 & 动态;其中静态方式在info.plist中进行配置;动态则经过UIApplicationShortcutItem等API进行代码级动态配置处理。系统默认会优先展现静态的Actions。若App安装后从未打开时,则默认只会展现静态Actions,只有至少完整启动一次以后,动态Actions才会出现。该部分以后会抽时间专门介绍一下。
图1 Quick Actions
小细节
- 在支持3D Touch功能的真机设备中,当Touch压力发生改变的时候,系统会调用 touchesMoved: API方法。这样致使的一个问题就是,在touch move事件中,X/Y坐标多是没有发生改变的~~~建议App中最好兼容准备
- iPad Pro中搭配Apple Pencil以后,App的刷新率会发生改变。例如本来是 20/s,搭配Apple Pencil以后,则会变成 40/s。刷新率的提高多是为了获取X/Y坐标时更加精确,但对于App的UI界面更新会形成影响,例如频繁的生成/删除内存对象等。
- 目前3D Touch 只能在真机设备中进行测试,模拟器中暂时没法进行调试/测试~~
- 目前国外已有开发者使用其余方式在低版本(iOS 9如下)系统中模拟出了相似 Quick Actions效果,感兴趣的能够搜索
参考连接
- https://developer.apple.com/ios/3d-touch/