Farlanki

apple watch界面导航

字数统计: 893阅读时长: 3 min
2015/03/18 Share

实现分层界面(Implementing a Hierarchical Interface)

您可以通过调用当前界面控制器的pushControllerWithName:context:方法在屏幕上推出一个新的界面控制器。通常,当用户点击按钮或表格行时,您可以从动作方法中调用该方法。每个新的界面控制器可展示下一级分层中的信息。

当在屏幕上推出新的界面控制器时,会将数据对象传递给pushControllerWithName:context:方法的上下文参数。在新界面控制器展示在屏幕上之前,这个上下文对象就是您与其通信的机会。您可以使用该对象来告知界面控制器展示什么样的数据或者传达什么样的状态信息。

想要解除界面控制器,可调用其popController方法。用户也可以直接从屏幕的左边缘轻扫解除界面控制器。界面控制器解除后即失效,而先前的界面控制器将会重新展示。根界面控制器不能被解除。

实现基于分页的界面(Implementing a Page-Based Interface)

1.对您希望作为第一屏的界面控制器执行Control-click操作,并将其拖拽到不同的界面控制器中。

应该强调第二个界面控制器,以指明segue是可用的。

2.释放鼠标按钮。

3.从relationship segue面板中选择next page。

通常在storyboard文件中配置一组初始的页面集合。当app启动时,WatchKit会实例化和初始化您的初始界面控制器,然后是分页界面中的其他界面控制器。如果您想改变一组界面控制器,请在初始界面控制器的init方法中调用reloadRootControllersWithNames:contexts:方法。调用该方法会使得WatchKit在尝试展示界面中任何其他页面之前加载新的界面控制器。您也可以在app运行时调用reloadRootControllersWithNames:contexts:方法来改变展示中的页面集合。

当系统加载您的WatchKit app界面时,它将实例化和初始化组成界面的所有界面控制器。当用户从一个界面控制器切换至下一个时,它将调用当前界面控制器的didDeactivate方法,以及即将展示的界面控制器的willActivate方法。willActivate方法可确保界面中的信息是最新的。

以模态形式展示界面控制器(Presenting Interface Controllers Modally)

模态界面可临时中断当前导航流以提示用户或者展示信息。您可以使用分页界面或分层界面来组成一个模态界面。想要模态地展示界面控制器,请从当前可视界面中调用以下方法之一:

调用presentControllerWithName:context:方法来模态地展示单个界面控制器。
调用presentControllerWithNames:contexts:方法展示两个或者多个使用分页布局的界面控制器。
模态界面的左上角包含一个文本标签,当点击时会解除界面。如果您没有为该标签指定一个准确的字符串,那么WatchKit会自动为其使用”Cancel”。您可以根据需要更改字符串,以反映解除模态视图的真实用意。比如,当展示那些您不希望用户响应的内容时,您可能会将字符串更改为”Done”或 “Close”。如果您使用了”Cancel”字符串,那要考虑为接受模态界面中的任何更改添加一个或多个按钮。

CATALOG
  1. 1. 实现分层界面(Implementing a Hierarchical Interface)
  2. 2. 实现基于分页的界面(Implementing a Page-Based Interface)
  3. 3. 以模态形式展示界面控制器(Presenting Interface Controllers Modally)