Apple Watch笔记-应用内导航模式

最近苹果婊上市,水果也发布了Xcode 6.2正式版,WatchKit也能够正常使用了。水果很及时地提供了Apple Watch的开发文档,我也及时地尝试着边学习边开发Watch App。html

今天主要想谈谈的是Watch App的页面导航模式,这一块内容与常规的iOS开发相差较大,值得探究。ios

 

页面类型api

 

 根据官方文档描述,Watch App只有两种页面形式,分别是Page BasedHierarchical。这两种导航形式是不能直接共存的,可是能够经过Modal Page(模态页面)实现共存,下面会有演示app

 

Page Based页面与iOS常规开发中的分页布局类似,能够左右滑动切换页面,属于同级导航,适用于每一个页面数据都不于其余页面有关联的状况,样式以下:ide

 

 

 

Hierarchical页面则是与常规iOS开发中的push导航基本一致,实现分级导航,适合更复杂的数据模型或者具备多层次数据的app,效果以下:布局

 

 

Modal Page能够实现Page Based页面与Hierarchical页面共存,自己与常规iOS开发中的模态导航形式基本一致,效果以下:学习

 

 

 

那么问题来了,如何实现他们呢?ui

 

  1. 设计器里实现

设计器中实现十分简单,和常规iOS开发一致,使用Control+鼠标拖拽的形式,实现效果以下:spa

 

 2.代码控制实现 设计

固然使用代码也能够实现push和model导航,push导航使用的方法主要为pushControllerWithName:context:, Modal导航使用方法为presentControllerWithNames:contexts: 及presentControllerWithName:context: 。

以下:

- (IBAction)modalToPage {
    //模态导航
    [self presentControllerWithName:@"DetailIC" context:nil];
    
}
- (IBAction)pushToPage {
    //push导航
    [self pushControllerWithName:@"DetailIC" context:nil];
}

 

总结:

 

Apple Watch中的导航形式变少了,须要咱们好好规划应用的页面导航结构,同时不能使用代码运行时添加UI元素,且尽可能不要容许运行long-running tasks的原则,带来了更多的要求,须要咱们好好考虑下。

最后附上官方文档地址:https://developer.apple.com/library/ios/documentation/General/Conceptual/WatchKitProgrammingGuide/ConfiguringYourXcodeProject.html#//apple_ref/doc/uid/TP40014969-CH2-SW1

相关文章
相关标签/搜索