當(dāng)你添加手表插件應(yīng)用到你的 Xcode 項(xiàng)目時(shí),你可以指定是否想要預(yù)覽界面。如果你忘記在建項(xiàng)目的時(shí)候添加預(yù)覽界面,你也可以晚點(diǎn)再把它加到你的項(xiàng)目中。一個(gè)預(yù)覽界面控制器有輕微的不同顯示方式在你的應(yīng)用的 storyboard 上。尤其是,它有一個(gè)預(yù)覽入口對象附屬在上面,同時(shí)它有一個(gè)默認(rèn)的布局,如下面的圖14-1。
圖 14-1 一個(gè)帶有預(yù)覽入口對象的界面控制器
http://wiki.jikexueyuan.com/project/apple-watch-programming-guide/images/glance_interface_2x.png" alt="一個(gè)帶有預(yù)覽入口對象的界面控制器" />
你可以用自定義的 WKInterfaceController 的子類去配置運(yùn)行時(shí)的預(yù)覽內(nèi)容。實(shí)現(xiàn)子類之后,你可以像實(shí)現(xiàn)其它手表插件應(yīng)用中的界面控制器一樣去實(shí)現(xiàn)它。
當(dāng)為你的應(yīng)用創(chuàng)建手表插件時(shí),為了確保預(yù)覽屏幕選項(xiàng)包含了創(chuàng)建的相關(guān)文件,你需要實(shí)現(xiàn)的預(yù)覽界面。Xcode 提供給你一個(gè)預(yù)覽 storyboard 屏幕和一個(gè)自定義的預(yù)覽界面控制器類。如果你沒有在創(chuàng)建的時(shí)勾選這個(gè)選項(xiàng),你可以手動(dòng)去配置。
手動(dòng)創(chuàng)建預(yù)覽界面
手表插件應(yīng)用有且只有一個(gè)預(yù)覽界面。不要添加更多預(yù)覽界面控制器到你的 storyboard 上。
實(shí)現(xiàn)預(yù)覽界面控制器是相當(dāng)簡單的,因?yàn)橹恍枰O(shè)置預(yù)覽容器的標(biāo)簽和圖像。所以你的預(yù)覽通常只需要實(shí)現(xiàn)兩個(gè)步驟。
使用一個(gè) NSTimer 對象周期地變化更新它在屏幕上預(yù)覽的內(nèi)容。你無需更新 WKInterfaceDate 和 WKInterfaceTimer 對象,因?yàn)樗鼈兪亲詣?dòng)更新的。
當(dāng)用戶觸摸預(yù)覽,蘋果手表會(huì)啟動(dòng)相應(yīng)的手機(jī)插件應(yīng)用。通常,啟動(dòng)的應(yīng)用之后會(huì)展示它的主界面控制器。如果需要定制點(diǎn)擊預(yù)覽之后的啟動(dòng)方式,按照如下步驟:
handleUserActivity
方法,用提供的 userInfo 字典去適當(dāng)配置你的 UI。 在啟動(dòng)的時(shí)候,調(diào)用 updateUserActivity:userInfo:webpageURL:
方法告訴手表插件調(diào)用主界面控制器的 handleUserActivity: 方法。用系統(tǒng)提供的的上下文數(shù)據(jù)適當(dāng)?shù)嘏渲媚愕?UI。例如,一個(gè)基于頁面的界面應(yīng)用,可以用這些提供的數(shù)據(jù)信息去選擇初始化時(shí)展示哪一頁。