APPLE WATCH 中文手册:WatchKit Apps--App概要

1418700829160873

原文:Apple Watch Programming Guide:App Essentials

Xcode支持用storyboard来创建Watch app的界面。当你在工程中新建一个Watch app,Xcode提供会提供一个storyboard来实现你的UI。这个Storyboard至少有一个Watch app的界面场景,并可能有额外的快速预览(glance)或通知界面场景。你可以从界面控制器中的对象库中拖动到storyboard的场景中。

Storyboard中的每个场景以相应的WKInterfaceController子类为支持(对于动态通知界面,子类是WKUserNotificationInterfaceController)。 对于每一个新的场景,可以在标识检查器(Identity inspector)中输入你界面控制器的名字。 每个界面控制器的代码都在WatchKit的扩展目标中运行,不用在你的Watch app中引入任何代码。

界面控制器怎样工作(How Interface Controllers Work) 

界面控制器(Interface controller)管理你storyboard的场景内容。每个界面控制器都使用outlet来保存场景中的引用对象,并定义action方法来响应用户交互。在运行时,你可以使用界面控制器的initWithContext:willActivate方法来配置界面。在这些方法里,你的操作任务如下:

  • 获取你想展示的数据。
  • 设置初始化和配置标签,图片和其他控件。
  • 根据你的需要,展示或隐藏你的界面对象。

这里没有限制Watch app中能拥有的界面控制器数量,但是过多的界面控制器意味着更复杂,所以要尽可能精简。您为app选择的导航类型定义了用户怎样从一个界面跳入下一个。有些导航类型需要你清晰的展示下一个界面控制器,而有些不用。更多关于两个场景间导航的信息,请查阅Interface Navigation.

整合你的故事版场景(Assembling Your Storyboard Scenes)

Watch app不使用iOS app那种布局模型。当你整合你的Watch app的界面场景,你无法在充足的空间里通过任意的布局元素来创建视图层级。相反,当你添加元素到场景,Xcode列出许多选项给你,垂直地叠放在不同的行中。在运行时,Apple Watch会根据可用空间将这些元素平铺出来。

WatchKit也提供了几种在storyboard场景里更精确的布局方法。大多数视图元件的size和position都可以在属性监视器(Attributes inspector)里配置。对象组群提供了另一种重要的工具来布局组件,及允许你像垂直布局那样水平布局你的元素。组群还提供额外的选项来布局组群的边界内组件。组群没有默认的视觉呈现形式,但可以按你自己的想法配置背景颜色或者背景图。

图5-1展示了排列在storyboard文件中的几种不同元素。前三个元素都是标签,它们每个都占用了自己那一行的全部水平宽度。对于每个标签,对齐变量决定了视图控制器边框是向左对齐、向右对齐还是居中对齐。标签的下面是一组水平排列的包含了两张图的对象。界面还包含了一个开关、, 一条separator(分割线)和一个按钮,这些元素都垂直地堆叠在对象组的最下面。

图5-1 Xcode中的界面:

1418624421368753

当在Xcode中创建你的界面时,尽可能地让对象自己调整尺寸来适应可用空间。App界面应该可以运行两种尺寸的Apple Watch。让系统调整对象尺寸来适应可用空间,这样可最小化为每款设备编写的代码量。

在运行时更新界面(Updating Your Interface at Runtime)

在运行过程中,界面控制器能让对象在相应的storyboad场景中做如下改变:

  • 设置或修改数据变量
  • 支持改变对象的外观
  • 改变对象的尺寸
  • 改变对象的透明度
  • 显示或隐藏对象

你不能添加新的对象到界面或者改变已经存在对象的次序。尽管你不能移除对象,但你可以通过隐藏对象来暂时从图层中移除。当控件被隐藏时,其他对象将会填充此前被占用的空间。 如果不想填满这些空间,可以把对象的alpha值设置为0。 更多关于隐藏场景对象的信息请查阅Hiding Interface Objects

界面的国际化(Internationalizing Your Interface) 

WatchKit app的storyboard是默认基于国际化的。这个特性会使在storyboard中任意的字符串都被自动的添加到__Localizable.strings__文件中。 您唯一要做的工作就是针对每种目标语言翻译文件中的字符串,并将其包含到应用程序中。 当在运行时创建storyboard场景时,Xcode会插入与本地化相关的文件。

当考虑国际化你的app时,您主要考虑的是如果排布你的界面,让包含文本的标签和控件能有足够的空间进行扩展。您可以垂直布局界面元素以便有足够的空间展示其标题,而不是把多个按钮放在同一行中。

对于文本和图片的国际化处理,可以使用iOS和OS X应用相同的技术。

更多信息详见国际化处理Internationalization and Localization Guide

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

(0)
iouedioued
上一篇 2015-06-15 09:59
下一篇 2015-06-15 10:08

相关推荐

  • APP设计:那些打动人心的设计点(4)

    你好,这是2017年的第12篇文章。自从写了这个系列,每天除了吃饭睡觉工作,其余的时间都在用各种APP,观察各种产品。在同质化越来越严重的今天,这些产品的微交互,是用户喜欢或讨厌一个产品的重要原因,不容被忽视。

    2017-05-04
  • 关于2017年的设计趋势,国外已经有了这13个预言

    在未来,当对微小细节的关注渗入用户体验设计的每一寸土壤;当对像素级完美的追求成为设计的基本要求;当将简单便捷的设计理念融入用户的日常生活,那么我们就能够帮助用户体验全新的生活。“庆祝成功自然无可厚非,但学习并反思失败更加重要。” ——比尔·盖茨“他们是种异常必要的无谓存在,他们因为需要被呵护而带给人恰到好处的慰藉。”“差劲的设计团队提供用户要求的UX。伟大的设计团队提供用户需要的UX。”“对于一个优秀的UX设计师来说,他/她最大的责任就是使用户在使用产品 的时候能产生信任感。”“一件好产品就如一部伟大的电影。”“我们逐渐发现这些智能小助手(AI)之间的合作能力可能并没有想象中那么强大。”“Material Design将会目睹它所倚仗的‘笔’与‘纸’之间的枪战——它会发现它的立身之本在面对未来强大多元的互联网时不堪一击。”——Chase Buckley(独立UX设计师)“与真实的纸不同的是,我们的数字材料可以随意伸缩与变形。纸质材料有物理表面与边界。是那些缝隙与阴影告诉你这一切,赋予了你能触碰到的东西意义。”

    2017-05-18
  • SKETCH | 周鸿祎自述:我的价值观

    在这本书的开头,我想讲讲影响我价值观的电影和书。说到价值观,有的人可能要笑了:都什么年代了,还讲价值观?虽然这本书的书名是《我的互联网方法论》,但这并不是按图索骥的说明书,你如果认为读完本书,就会做产品了,就能向互联网转型了,对不起,真的是做不到。赵括把兵书读了千百遍,在纸上推演了千百遍,到了实际的战场上,还是一个输。因为无论是做互联网产品,还是传统企业向互联网转型,能不能做得成,是看你能不能创新。而能不能创新,除了你的技能、阅历、领导...

    2018-04-26
  • 聊聊动态效果在体验设计中的应用

    首先,为什么要动?可能你会想到以下几条理由:呵呵,你要这么想就完了。

    2017-05-22
  • 【科普】给想学交互设计的同学的一些建议

    最近在知乎上,有很多人问我,交互设计有什么好的学校?出国读研和在国内读研应该怎么选择?就业怎么样?其实在行业内和行业外,信息存在大量的不对称,很多同学都不太清楚怎么入门和学习交互,我觉得有必要专门开个文章聊下这个话题,算是一个有工作经验的人给新入行或者将要入行的同学的建议。1. 交互设计是否需要读研?我的答案是:看你的情况。每个人情况不同,自然对应不同的选择。情况A:如果本科就受过交互设计方面系统的训练(学校课程、实习等),有一定天赋和...

    2018-02-11
  • 网站分页导航对用户体验和优化的影响几何?

    欢迎点击上方蓝字免费订阅温馨提示:请点击上面的蓝色字体,再点击“关注”,这样您就可以继续免费收到精彩的内容了。在博客、杂志甚至是大多数站点中,分页的点击次数可能比搜索还要多,因为在很多时候,访客并没有明确自己的需求,只是在网页中一页接着一页的浏览信息,如果在分页上有良好的用户体验同时又能引导访客进行浏览,就能大大增加网站的黏性。但在很多站点中,分页并没有得到足够多的重视,即便是花时间来制作分页也不过是基于图标的样式和设计,对分页组件的整...

    2018-02-01
  • 十二条动效体验原则

    如果你想要了解更多背景信息,建议先阅读我的前一篇译文《动效的基本常识》,其中介绍了动画与动效的差异、即时与非即时的定义、动效提升可用性的四种方式(可预期、连续性、表述性、关联性)、以及理论、手段、属性与值之间的关系。

    2017-04-28
  • Axure中使用图标字体【FontAwesome】

    我们使用Axure制作原型时,经常会使用到各种小图标。有些朋友自己制作、有些到网上下载,然后使用截图导入到Axure中使用。这样做非常繁琐,有些朋友问Axure是否能够像图像处理工具那样便捷灵活滴使用图标字体呢?答…

    2015-01-16
  • 交互动画设计案例—1688首页动效

    随着CSS3和HTML5的发展,越来越多狂拽炫酷叼炸天的动效在网页设计上遍地开花,根据最新的浏览器市场份额报告,IE6的份额已经降到了5.21%,这简直是一个喜大普奔的消息,做动效可以完全不care低端浏览器的时代已经在…

    2015-04-24
  • 《设计之下》之交互总结

    作者:ManUx 拖了很久的读书笔记总结,总算稍稍总结了一下。有些内容都已经开始模糊了,每次重新再看的时候,又会发现跟之前不一样的理解。这篇读书笔记主要是对《设计之下》交互部分进行总结,书中基于搜狐新闻客…

    2015-08-18