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

相关推荐

  • 没去过赌场,别谈用户体验

    订 [图片] 阅20———— Jun. ————A大叔说的 第09篇 文章既然最终决策是“人”,就要思考人性什么是好的产品?罗辑思维演讲时提过一个观点:能占用用户时间的产品就是好产品。如果把这个概念加以延伸,应该可以这么说:消耗了用户很多时间,但用户不自知,一段时间未使用就会再次

    微信热点 2018-04-08
  • 设计效果检验之道

    作者:Hahn   设计效果检验,即针对设计师的设计方案进行数据验证,通过客观的数据来量化一部分设计方案中较为主观或存在争议的地方,以此判断设计方案的优劣,从而得出检验结论。 众所周知,每个人对设计的评判是…

    交互专题 2017-08-07
  • 交互设计的三大铁律规范!

    科幻爱好者们没有人不知道阿西莫夫的机器人三定律,在交互设计中,我们也需要三条铁律来规范一切行为。本文来自UI中国主站,由IFEC成员翻译作品分类: 经验/观点/自译外文 原作者:Diogenes Brito 译者:十萬個為什…

    2017-08-01
  • UED研究如何应用到产品设计中

      腾讯有互联网产品经理的黄埔军校之称。前段时间看腾讯CDC出版的《在你身边,为你设计》,颇有启发。特别摘录书中的《商业价值与用户价值的平衡》中讲UED的部分,看看腾讯是如何让产品责任人和企业高层接受UE…

    2015-07-23
  • 一个用户体验设计师的转化率优化准则

    优化,作为一种服务,正变的无处不在。那么,对于通讯公司和专业的优化公司来说这两者有什么区别呢?我见过很多个人和机构在做转化率优化的时候忽视了去思考‘为什么’这个部分。说服用户的方式必须是道德的,因为我们不想破坏整体用户体验、客户的声誉和他们的品牌。从本质上讲,设计一个高转化的网站是我们的工作,并且这也是我们要去推动的边界。 一个漂亮的网站可能在短期内取悦客户,但是,如果网站不赚钱,那幸福会很短暂。

    2017-05-19
  • Axure RP 8 入门手册 – 第6章(一)

    第6章概要与检视功能第1节概要功能第2节检视功能-页面样式第3节检视功能-页面说明第4节检视功能-页面属性第5节检视功能-元件命名第6节检视功能-元件样式第7节检视功能-元件说明第8节检视功能-元件属性第9节检视功能-元件交互第10节检视功能-组合属性第1节概要功能千语:楼叔,我在做原型的时候,画布里面有很多元件,有的还被别的元件盖住,选起来很不方便,有没有什么好的方法呀?小楼:别急,大妹子!Axure的概要面板中能够很方便的管理元件,...

    2018-04-22
  • 伦艺交互设计(MA)offer入手,工科出身、完全零基础的她是如何做到的

    对于零基础申请的同学来说,短时间内接触并掌握一个陌生的专业,既需要勇气,又需要决心。这是因为,科班出身的同学申请国外名校尚有难度,更何况是毫无专业基础的同学,过程中遭遇困难、挫折也可想而知。正因为申请难度大,如果能从其他同学的申请过程中吸取成功经验,规避问题,少走弯路,必然会有利于未来申请。本期,简清为同学们请到了拿下伦艺交互设计(Interaction Design Communication)专业offer的L同学,作为一名零基础申...

    2018-04-12
  • 教你掌握27种图层混合模式的用法

    嗯,让我们从最最基础的说起——像素。你就把他当成一个个五颜六色的小色块.这些小色块们都有一个特定的标记值,比如,RGB值,CMYK值了。当然透明色块也是像素,不过值是零罢了。我们的计算机就是靠识别这些数值来认识颜色的。

    2017-06-05
  • 科幻场景中的交互设计

    那么多的电影,里面那些UI场景你留意过么?在不少涉及未来题材的电影中,许多高科技设备与人交互时候的UI界面设计也是非常值得学习的。这次小编大家搜罗了各种电影中出现的UI场景,一起来学习科幻场景中的交互设计…

    2015-01-26
  • “空状态的设计“值得更多关注

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

    2015-08-17