iOS 9之WatchKit for WatchOS 2

金田(github示例源碼)

? ? ? ?自AppleWatch發行的同時就可以為AppWatch開發相應的應用程序,不過最初的版本,能開發的功能極為有限,所以也只是有少數的App廠商為Apple定制了App,所以迄今為止,Apple Store上面,看得到的Apple Watch應用也為數不多,多數都是直接跟Apple Watch所帶的傳感器有關的應用,如醫療類、通訊、提醒、運行類等。

? ? ? 然此次,Apple 發行的Watch OS 2給了App開發商更多的發展空間,可以使用Xcode 9為AppleWatch定制功能更為豐富的app。下面就讓我們一起動手開發一個簡單的AppleWatch App吧

?

圖1 創建Watch App

?

圖2 Watch App 界面開發

?

圖3 App運行效果圖

上面只是做了一個簡單的界面開發,具體的可以看github示例源碼,下面就跟著Cocoon Jin一起來看下,此次的Watch OS 2具體有新增了哪些亮點功能:

圖4 WatchKit 新支持功能

從上圖我們可以看到,此次Apple Watch OS2有給用戶提供Digital Crown、Layout and Animation、Taptic Engine、Audio and Video、Alerts、PassKit等功能支持。

?

?? ? ? 下面我們就一起來看下,這些功能具體的表現是什么樣子

? ? ? ? 說到AppleWatch,可能最先想到的就是AppleWatch的時鐘界面,第一代AppleWatchOS并沒有提供相應的接口,來支持App開發商對表盤進行自定,讓大家驚喜的是,這次WatchOS2提供了大家相應的接口。

圖5 系統默認表盤

圖6?Apple Watch OS 2?App開發可自定部分

這里只提供這一個表盤做為示例,其它的部分詳見Apple官方文檔。

?

另外一個亮點的部分就是 Audio and Video 部分,WatchOS 2可以在AppleWatch上面播放音樂和Movie。

?圖7 Watch App內,Audio播放控制界面

?

圖8 Watch OS 2,視頻播放控制界面

此外,現在WatchOS 2也提供了像iOS里面的那種系統提示窗口,示例如下:

圖9 App 內彈出的提示窗口

通過下面的代碼(詳情),就可以彈出像iOS里面的AlertView一樣的提示窗口,不過目前選擇不同的按鈕,在回調里面所執行的事件執行無效,期待Release 版本SDK可以修復這個問題。

__block WKInterfaceButton *button = self.button;

? ? WKAlertAction *englishAction = [WKAlertAction actionWithTitle:@"English"

?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? style:WKAlertActionStyleDestructive

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? handler:^{

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? [button setTitle:@"Kdan Mobile"];

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? }];

? ? WKAlertAction *chineseAction = [WKAlertAction actionWithTitle:@"中文"

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? style:WKAlertActionStyleDestructive

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? handler:^{

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? [button setTitle:@"凱鈿軟件"];

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? }];

? ? [self presentAlertControllerWithTitle:@"Kdan Mobile"

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? message:@"歡迎閱讀Cocoon Jin iOS9系列文章!"

?? ? ? ? ? ? ? ? ? ? ? ? ? preferredStyle:WKAlertControllerStyleAlert

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? actions:@[englishAction, chineseAction]];

?

?

版權所有,轉載須注明作者(金田)及原文出處(原文)

?

轉載于:https://www.cnblogs.com/CocoonJin/p/4735757.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/375633.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/375633.shtml
英文地址,請注明出處:http://en.pswp.cn/news/375633.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

創建響應式布局的10款優秀網格工具集錦

在這篇文章中,我們為您呈現了一組優秀的網格工具清單。如果我們錯過了任何沒有列出在這個清單上的東西,請分享給我們。如果網頁設計和開人員采用了正確的工具集,并基于一個靈活的網格架構,以及能夠把響應圖像應用到到設計之中&…

expected initializer before

原因&#xff1a;某個地方缺少分號 如&#xff1a; void print(int a) {int b ///wrong herestd::cout << a << std::endl; }解決&#xff1a;重點排查報錯行前幾行的變量聲明等。

memcpy、memmove、memset、memchr、memcmp、strstr詳解

第一部分  綜述 memcpy、memmove、memset、memchr、memcmp都是C語言中的庫函數&#xff0c;在頭文件string.h中。memcpy和memmove的作用是拷貝一定長度的內存的內容&#xff0c;memset用于緩沖區的填充工作&#xff0c;memchr用于字符的查找工作&#xff0c;memcmp用于比較內…

21分鐘 MySQL 入門教程(轉載)

鏈接&#xff1a;http://www.cnblogs.com/mr-wid/archive/2013/05/09/3068229.html轉載于:https://www.cnblogs.com/hxb316/p/3966731.html

Maven倉庫詳解

轉載自&#xff1a;Maven入門指南④&#xff1a;倉庫 1 . 倉庫簡介 沒有 Maven 時&#xff0c;項目用到的 .jar 文件通常需要拷貝到 /lib 目錄&#xff0c;項目多了&#xff0c;拷貝的文件副本就多了&#xff0c;占用磁盤空間&#xff0c;且難于管理。Maven 使用一個稱之為倉庫…

c++ 從 string 到 short

string test"1234"; short *p reinterpret_cast<short*>(const_cast<char*>(test.c_str()));從 short 到 char * char *q reinterpret_cast<char*>(const_cast<short*>(p));還可以利用 memcpy 這個函數 #include <cstring>short a…

JavaScript02

JavaScript02 如果<head>標簽中包含的外部文件很多&#xff0c;那么這將直接導致頁面展示速度很慢。因為html只有當<body>元素開始之后&#xff0c;才會開始頁面展示動作&#xff0c;因此&#xff0c;最直接的解決辦法就是&#xff0c;將一部分不是頁面加載之后立刻…

.NET使用NPOI讀取Word模板并替換關鍵字并下載

NPOI 是 POI 項目的 .NET 版本。POI是一個開源的Java讀寫Excel、WORD等微軟OLE2組件文檔的項目。 使用 NPOI 你就可以在沒有安裝 Office 或者相應環境的機器上對 WORD/EXCEL 文檔進行讀寫 NPOI下載地址&#xff1a;http://npoi.codeplex.com/ 以下代碼僅供參考&#xff0c;請根…

中間件、MetaQ入門學習

目錄 1. 中間件技術 2. MetaQ中間件 3. MetaQ編程實踐 1. 中間件技術 0x1: 中間件簡介 中間件(Middleware)是提供系統軟件和應用軟件之間連接的軟件&#xff0c;以便于軟件各部件之間的溝通&#xff0c;特別是應用軟件對于系統軟件的集中的邏輯&#xff0c;在現代信息技術應用框…

MyBatis 入門到精通(二) SQL語句映射XML文件

MyBatis 真正強大之處就在這些映射語句&#xff0c;也就是它的魔力所在。對于它的強大功能&#xff0c;SQL 映射文件的配置卻非常簡單。 如果您比較SQL 映射文件配置與JDBC 代碼&#xff0c;您很快可以發現&#xff0c;使用SQL 映射文件配置可以節省95%的代碼量。MyBatis 被創建…

Monitoring the process execution and memory consumption in its lifetime

<?xml version"1.0" encoding"utf-8"?> Monitoring the process execution and memory consumption in its lifetimeMonitoring the process execution and memory consumption in its lifetime Recently, I am working on a research project whi…

設置和清除LD_LIBRARY_PATH

"" 設置 export LD_LIBRARY_PATH$LD_LIBRARY_PATH:/the/path/you/want/setexport LD_LIBRARY_PATH/the/path/you/want/set "" 查看設置 echo $LD_LIBRARY_PATH "" 清除 unset LD_LIBRARY_PATH

Jenkins中切換devtoolset

source /opt/rh/devtoolset-4/enable or source scl_source enable devtoolset-4

告訴一個遠程團隊協作的故事

Lisette Sutherland和Elinor Slomba在一起收集一些人的故事&#xff0c;這些人的業務模式須要依靠遠程團隊正確完畢工作。故事中體現出遠程團隊怎樣協作。怎樣跨越距離的障礙&#xff0c;怎樣建立信任&#xff0c;怎樣完畢任務。即將出版的《高能協作&#xff1a;遠程戰地指南》…

混沌數學之呂陳吸引子

呂陳吸引子&#xff08;Lu Chen attractor&#xff09;也稱Lu attractor 吸引子是2002年中國科學院數學與系統科學研究院研究員 呂金虎&#xff08;Jinhu Lu)&#xff0c;Suchun Zhang 和香港城市大學電子工程系講座教授陳關榮&#xff08; Guangrong Chen &#xff09;發現和分…

整數反轉

給出一個 32 位的有符號整數&#xff0c;你需要將這個整數中每位上的數字進行反轉。 示例 1: 輸入: 123 輸出: 321示例 2: 輸入: -123 輸出: -321示例 3: 輸入: 120 輸出: 21注意: 假設我們的環境只能存儲得下 32 位的有符號整數&#xff0c;則其數值范圍為 [?231, 231 ?…

C# char[]與string之間的相互轉換

string 兌換 Char[] string ss "abcdefg";char[] cc ss.ToCharArray();Char[] 轉換成string string s new string(cc);byte[] 與 string 之間的轉換 byte[] bb Encoding.UTF8.GetBytes(ss);string s Encoding.UTF8.GetString(bb);string[] 轉換成string string …

java 直接 訪問WebSphere JNDI

代碼如下: Hashtable<String, String> env new Hashtable<String, String>();env.put(Context.INITIAL_CONTEXT_FACTORY, "com.ibm.websphere.naming.WsnInitialContextFactory");env.put(Context.PROVIDER_URL, "iiop://localhost:2809");Co…

Standard C++ Episode 7

六、C的I/O流庫 C&#xff1a;fopen/fclose/fread/fwrite/fprintf/fscanf/fseek/ftell... C&#xff1a;對基本的I/O操作做了類的封裝&#xff0c;其功能沒有任何差別&#xff0c;用法和C的I/O流也非常近似。 七、格式化I/O <</>> 1 /*2 *格式化I/O練習3 */4 #in…

在Android設備與Mac電腦之間傳輸文件

不同于Windows和Linux&#xff0c;Android設備連接到Mac電腦上是看不見掛載的目錄的&#xff0c;既然看不到了Android設備的掛載目錄&#xff0c;如何在Android設備與Mac電腦之間傳輸文件呢&#xff1f; 原來Android官方提供了傳輸文件的工具&#xff01;訪問www.android.com/f…