写第一个iWatch APP

开始前的准备工作:

将Xcode更新到6.3版本,这个版本基本和iWatch上市的时间在一个时期。

从Xcode 6.2-beta版本开始加入了WatchKit Framework和一些相关技术,有了这些就可以开发iWatch App了,但是我是从6.3版本开始尝试开发iWatch应用的,所以建议也都升级到6.3版本,这样可以避免版本差异造成的实施问题。

写这个手册,我会尽量说明iWatch开发架构和其独有的UI。

开始

In Xcode, navigate to File\New\Target… and select the iOS\Apple Watch\Watch App template.

iwatch app 必须绑定在一个主app之上,所以建立一个iwatch 模板是通过添加一个新的Target。这里点击 Next按钮。

接下来的页面就是一些基本设置,一般不用管他,直接点击Finsh按钮。

我看下项目的导航目录,会看到多了两个文件分组。

791AB951-7E96-4C7F-A684-695F37BADE67

1. testwatch WatchKit App 这个分组就是放了一个StoryBoard和一些图片。这里可以理解它就是一个View。

2.testwatch WatchKit App 这个分组会包括代码来处理事件,包括程序打开,按钮点击、滑动等。可以把它看做一个Controller和model。

 

手表界面

设计手表界面很容易就跟设计普通的App一样使用Storyboard,你可以项目导航里点击Interface.storyboard。

大概会是上面这个样子,因为我是借用了一些图片,所以会和我生成的程序略有差别。随后有时间我会把我这版本更新上去。

你会看到一个空的界面上面什么都没有。现在我可以添加一些。拽一个Label和按钮把。

B35624D8-B3C1-400F-A579-2350DB5BFC71

可能是因为在手表上,添加的按钮默认还挺大。^_^

在这里你可以已经发现拽上去的控件好想只能在左对齐,而不是像App的界面控件可以随意拖拽。在这里可以通过Positon来作一些配置。

 

Actions and Outlets

Actions and Outlets应该是大家最期待的,你可以看到怎么用代码来控制界面上得控件和处理事件。

这块你可能会感觉难一些,比如Storyboard和代码分成了两个组,而且业务逻辑还会涉及到手表和手机交互等等。不过现在就可以告诉你,这块没那么难,复杂的问题苹果都封装到了底层。我们只需要专注在业务层面。

现在基本代码是拖拽的年代了,我也从现在开始与时俱进下。以前都是手敲。打开Assistant editor,确保之前已经在storyboard中选中了界面模板。这个时候由此已经显示InterfaceController代码了。然后点击lebel按住Cotrl键往代码里拖拽一个Outlets属性。起好名字,点确认就加好了。之后再添加按钮和按钮单击事件方法。

 

Basic WatchKit Code

我开始写一些watchkit代码了,在这之前需要在项目中添加下WatchKit.famework库。在项目文件导航中选择Watchkit extension target. 在选择General页签,然后滚动到Linked Frameworks and Libraries部分。

点击+按钮,你可以看到一堆可以添加的库,选择BitWatchKit.framework,然后添加到项目中来。

现在添加完库,就可以写一些代码更新之前在UI模板中添加的Lebel了。

打开在WatchKit Extension分组下InterfaceController.m文件,在文件最上面添加语句:

#import <WatchKit/WatchKit.h>

注:有肯能Xcode自动在InterfaceController.h中添加了,这块就补用添加了。