Glance
整理的内容有不够准确的,望大家积极排雷交流指正。
Glance 是什么
Glance Interface 是WatchKit提供的一个Apple Watch入口。Glances页面不可以滑动,只能提供一个屏幕;只能用于读取数据,不能用于编辑修改数据;不能包含按钮、开关和其他交互的control;点击进入对应的watch app。
一个应用只允许有一个glance接口控制器,因此在使用glance显示你的数据的时候必须考虑这个问题。(只允许显示一个手表的屏幕大小)。
Glance顾名思义一瞥,让用户一瞥式浏览。
当点击Glance进入对应的watch app,我们能做点什么吗?答案:必须的。
Responds to Handoff–related activity.
响应切换相关的活动,
你可以再Glance controller 中通过updateUserActivity:userInfo: 方法更新设置用户信息(userInfo)。相应的在watch app可以通过handleUserActivity:userInfo方法接收在Glance中更新设置的用户信息(依字典类型存储)。
如下代码:
-
在Glance interface controller中更新设置用户信息的代码:
- (void)willActivate { NSString *bundleIdentifier = [[NSBundle mainBundle] bundleIdentifier]; [self updateUserActivity:bundleIdentifier userInfo:@{ @"controllerName": @"imageDetailController", @"detailInfo": @"This is some more detailed information to pass." }]; }
-
在watch app的main controler中接收用户信息代码:
/** *@description 点击Glance的启动watch app的时候调用,如果没使用方法updateUserActivity: userInfo:更新设置用户信息则不会调用。 *@param userInfo :用户信息 *@returns void */ - (void)handleUserActivity:(NSDictionary *)userInfo { [self pushControllerWithName:userInfo[@"controllerName"] context:userInfo[@"detailInfo"]]; }