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"]]; }