apple watch 中文手册:Apple Watch 整体架构

整体功能预览

总体而言,WatchKit第一版SDK提供的功能远远超出了我的期望。因为我原本以为第一版WatchKit可能侧重于对iOS Today Extension功能的延伸,而不是真正开发Watch App。所以当知道真相后,我即惊讶又感到高兴,第一版WatchKit并不是我所想的那样,它可以为Watch App创建全新的交互界面,而且可以通过iOS App Extension去控制它们。

1416532628595717

所以我们能做的并不只是一个简单的所谓iOS Apple Watch Extension的玩意,而是有很多新的功能需要我们去挖掘。目前提供的比如特定的UI控制方式 、Glance、可自定义的Notification、和Handoff的深度结合、图片缓存等等,作为开发者,这些功能已经让我为之兴奋了。

Apple Watch的架构

WatchKit带给我的惊讶之一是它的架构。目前Watch App的运行是由两部分相互结合进行工作的:

1416532650423808

· 你的Apple Watch主要包含用户界面元素文件(Storyboard文件和静态的图片文件)和处理用户的输入行为。并不会真正在Apple Watch中运行代码。换句话说,Apple Watch仅是一个“视图”容器。

· 你的iPhone包含所有的逻辑代码用于响应用户在Apple Watch上产生的诸如应用启动、点击按钮、滑动滑杆等行为。换言之,iPhone包含了控制器和模型。

有趣的是Apple Watch和iPhone的这种交互是在幕后自动完成的。你要做的工作只是在Storyboard中设置好UI的Outlet,然后其他的事都由WatchKit SDK在幕后通过蓝牙技术自动进行交互。即使iPhone和Apple Watch是两个独立的设备,你也只需要关注你本地的代码以及Outlet的连接情况,这真是一件很酷的事情。

WatchKit布局

一个令我惊讶的是Watch App的UI布局方式,我们不能再用AutoLayout进行布局了。取而代之的是一种新的布局方式Group,你需要将界面元素比如按钮、Label添加到Group中,然后Group会自动为你添加的界面元素在其内部进行布局。

1416532701209793

你可以将一个Group嵌入到另一个Group中,用于实现较为复杂一点的界面布局,并在Group中还可以设置背景色、边距、圆角半径等属性。

这让我想起了Java中的BoxLayout或者XAML中的StackPanel

Glances和Notifications

Watch App中最酷的功能我觉得就是Glances和Notifications了。我个人认为,Apple Watch的应用中最有用的功能之一就是能让用户很方便的(比如一抬手)就能看到自己感兴趣的事物的提醒通知,比如有人在Twitter中提及到了你或者比特币现在的价位等等。

1416532781558472

Glances和Notifications能为你带来什么呢?

· Glances能让你在应用中快速预览信息,有点像iOS8中的Today Extension。

· Notifications能让你在Apple Watch中接收到各类通知。Apple Watch中的通知分为两种级别。第一种是提示,只显示应用图标和简单的文本信息。当你抬起手腕或者点击屏幕时就会进入到第二种级别,你就可以看到该通知更多详细的信息,甚至有交互按钮。

在Glance和Notification这两种情形下,你都可以点击屏幕进入到对应的Watch App中,并且使用Handoff。你甚至可以将特定的View Controller作为Glance或Notification的内容发送给用户。

我预期在未来几个月我们会在Glance和Notification上面投入较大的时间。

动画

Apple Watch中不支持动画,这多少让人觉得有点奇怪。如果你希望某个UI元素具有动画效果,你必须要生成一堆图片,这些图片的内容是连续动画每一帧的内容,然后循环显示这些图片,感觉又回到了GIF动画时代。所以在Apple Watch中不支持iOS中UIView或CALayer这种动画,只支持帧动画。

举个例子,你们可以看看Apple的Lister example示例,你会发现Apple通过360张图片来实现一个画圆的动画效果。

1416532857166651

这显然是一个灾难性的工作量,不过如果需要,也可以借助某些工具去生成一个动画需要的所有图片。不过,因为Apple Watch的容量很有限,所以你要谨慎加入帧动画,因为需要大量图片占用内存,除非有画龙点睛的动画,否则还是尽量少使用动画。

设计资源

如果你是一名设计者(或者对设计有浓厚的兴趣爱好),一下两点建议对你有很好的帮助:

1.放下你手中所有的事情,阅读Apple提供的针对Apple Watch的Human Interface Guidelines (HIG)。里面有非常不错的指导和参考能帮助你理解Apple Watch UI设计中你有疑惑的地方,因为设计Apple Watch App是一个全新的世界。

2.你一定要下载Apple Watch Design Resources。这里有大量关于设计Apple Watch App的PSD素材,比如UI控制模型、颜色、元素间距的指导、笔画粗细的指导等等,有很多有用的东西,给我留下了非常深刻的印象,这里强烈推荐。

原文:WatchKit: Initial Impressions

原创文章,作者:ioued,如若转载,请注明出处:https://www.iamue.com/6199/

(0)
iouedioued
上一篇 2015-06-15 07:41
下一篇 2015-06-15

相关推荐

  • 别被数据骗了——视频搜索页面设计研究总结

    如今的互联网PM都会对产品数据进行追踪,作为自己的KPI指标。但是在实际的设计结果中,令人满意的数据有时却并不一定会说明产品的实际使用效果,数据呈现的结果和用户的实际使用体验有时甚至是背道而驰。某用户:点击之后进去就直接播放了,有时候开着声音吓一大跳,会马上点出去。哦,你说按钮上的文案啊,没有注意呀!

    2017-05-02
  • 观点解读|四两拨千斤的交互设计方法

    最近读了一本书,叫做《细节,如何轻松影响他人》,里面给出了52条意见,每一条意见都是经过大量实验得出来的,有一定的科学依据,而且这些意见也反应了人们的普遍心理,强力推荐销售人员看看。这本书的主旨就是:只需改变一点点,就可以达到四两拨千斤的显著效果。虽然有52条之多,但是我会抽取一些和交互关系比较大的观点进行解读。

    2017-05-02
  • Reading Your User | 设计心理学书籍推荐

    研究大众的心理学对于设计是很有帮助的。用户在围绕着你的产品所进行的一系列行为举止背后的动机是什么,与之互动时进行过哪些心理活动,外部的哪些因素能够成功影响用户的决策……这些都能够设计师完成更好的设计。

    2017-05-20
  • 如何输出一份合格的交互设计文档?

    做一件事之前一定要先想清楚做这件事的目的,为什么要做这件事,只有这样,才能万变不离其宗,不会变成为了做事而做事,这很可怕。拿交互设计文档来看,为什么要写交互设计文档,这是开始写之前要想清楚的。

    2017-05-15
  • 交互案例分享-Spring音乐播放器

    在设计流程的过程中,我们往往会把流程设计的越短越好,最好一步完成,这样用户在流程中停留的时间越短,流程的转化率越高。 最近在试用一款叫「Spring」的音乐播放 App,它根据要你要进行的运动类型,节奏频率,偏…

    2014-09-16
  • 打造一个平台的用户体验,从需求方和供给方入手

    这几年做平台,我一直在思考平台的价值究竟是什么?后来我认识到:满足供需双方的需求,提供超越传统线下方式的用户体验,就是平台的价值。平台圈住的用户并不是它的价值,而是因为这个平台具备价值,所以用户愿意留在这个平台上。

    2017-05-11
  • “空状态的设计“值得更多关注

    空状态,或称零数据状态,很多时候不太招设计师的待见。我们基本都是在主要流程界面的设计工作完成之后才会回过头来考虑完善一下,因为从表现上来看,空状态给人的感觉就是临时性的,有些微不足道。 不要被空状态的…

    2015-08-17
  • 巧用9大服装穿搭技巧,助你轻松搞定专题页设计!

    到目前为止,我已经写了好几十篇关于Banner设计的文章了,目前应该还没有人把Banner设计讲出这么多门道出来吧(脸红ing……哈哈)。但是,我今天想升级一下,不讲Banner设计了,而是给大家讲一下Banner设计的进阶版——专题页设计(做好专题页的前提就是做好Banner设计,这也为什么我会在前面那么大篇幅讲Banner设计的原因咯)。

    2017-05-17
  • 网页重设计的7个常见误区与解决方案

    “如果所有都是重点,那么就不存在重点了。——Patrick Lencioni”“用户在手机上永远用不到这些内容。”

    2017-05-23
  • 购物商城微信公众号交互设计

    设计背景 由于微信公众号轻应用的设计需要在微信的结构框架中进行,信息架构和导航布局需要基于微信的开发接口和架构来做,项目开始时微信针对公众号的导航框架刚好有做出调整,在进入公众号里面的页面后可以逐级返…

    2015-11-06