iOS開發周報:Apple 下周發布 21.5 inch 4K iMac,新款鍵鼠套裝有望配備 Force Touch
新聞
-
21.5 寸 4K iMac 即將發布 :據稱 Apple 有可能在 10 月 13 日對 21.5 inch 的 iMac 作出更新,將為其配備分辨率為 4096 x 2304 的 4K 顯示屏。另外,在 OSX 10.11 beta 版的代碼中有人找到了第二代 Magic Mouse 和 Keyboard 的字樣,據稱新版本外設將配備藍牙 4.2 以及可能具有 Force Touch 特性。
-
《哈利波特 - 增強版》登陸 iBooks Store :哈利波特迷的果粉有福了。J.K. Rowling 和 Apple 達成了協議,將在 iBooks Store 以獨占的方式上架《哈利波特 - 增強版》系列圖書。這套電子書使用了 iBooks 的互動特性,不僅有圖書原文,還包括了互動動畫,原畫集等內容。而最近 iBooks Store 才剛在中國開業,這對于整個 iBooks Store 生態是一個非常正面的消息。不過遺憾的是,暫時這套圖書只在部分國家的 iBooks Store 發售,而中國并不在內。不過其他語言的版本現在似乎也在制作之中,我們還是有希望看到這套書在中國發售的。
教程
-
iOS 9 by Tutorials :Raywenderlich 每年都會在新的 iOS SDK 發布后出版一本教程,涵蓋絕大部分系統的新特性和開發者所需要和應該掌握的新技能,今年也不例外。今年的教程中包括了 Swift 2.0,Spotlight 搜索,多任務以及 UIStackView 等等多方面的內容。雖然教程的售價對于國內開發者可能略高,但是絕對物有所值。入門和中級開發者如果沒有時間通看 WWDC 的話,跟隨這本教程來學習 iOS 9 SDK 應該是最快的方式之一。
-
guard & defer :guard 和 defer 是在 Swift 2 中新加入的流程控制關鍵字,它們的出現豐富了 Swift 的語法,也徹底解決了使用多個 if let 語句使得縮進過深,難以閱讀的問題。這篇文章詳細討論了這兩個關鍵字的使用方法和存在的價值。
-
使用Xcode查找項目中的中文字符串 :應用想要打開全球市場的話,本地化是必不可少的。如果我們直接一開始就注意了這一點,使用
NSLocalizedString
的話,從源文件中提取需要本地化的字符串是一件很容易的事,但是如果一開始為了省事我們直接硬編碼了中文字符串的話,想要在所有文件中一個不漏地找到這些字符串就不那么簡單了。這篇文章介紹了如何準確地查找到所有中文字符串的方法。
開源項目
-
FDStackView :
UIStackView
是 Apple 在 iOS 9 SDK 中新加入的一類 UI 控件,也是 iOS 生態中缺失已久的一種布局方式。對于日常 app 開發,不夸張地說,可能 80% 的 UI 都可以使用 stack 的方式來進行布局。而如果我們不使用UIStackView
的話,即使是最簡單的線性布局,我們也不得不依賴于各種約束。但是現在UIStackView
唯一的缺點就是只能在 iOS 9 上使用,這個項目通過巧妙的方式用自己的一套實現在非 iOS 9 中替換了UIStackView
的鏈接和實現,讓我們可以在低至 iOS 6 的系統上使用UIStackView
,并且保持和最新的 iOS 9 上同樣的用法和語法。這在現在的兼容和之后的遷移中都有著巨大的價值。 -
FlagKit :像是在引導用戶填寫手機或或者是選擇語言的時候,我們經常會需要按照用戶需要顯示國家或者地區的旗幟。這個庫包含了設計漂亮,風格統一的一套旗幟,并且按照國家代碼進行了編排,使得我們可以很容易地使用用戶設備語言來選擇和顯示對應的旗幟,十分方便。
-
JSQMessagesViewController :一個聊天界面可能看起來簡單,但是實際上需要關心的事情非常多,特別是在涉及到像是圖片、鏈接等內容時。雖然 TextKit 已經大幅幫助我們簡化了相關的工作,但是想要寫出一個漂亮的聊天框和消息列表依然是費時費力的事情。JSQMessagesViewController 是一個比較成熟的方案,也可以進行一些自定義。如果你的項目里需要一個類似的比較標準的消息體驗的話,這個框架會是很好的選擇。
-
swifter :使用 Swift 寫的一個簡單的 HTTP 服務器。有時候我們可能需要在我們的 app 中運行一個服務端,這樣就可以通過其他設備來訪問當前 app 中的內容了。不過因為這個框架使用到了一些 Foundation 的內容,所以即使是之后 Swift 開源也還并不能直接實現跨平臺的移植,比較可惜。不過從最近 Swift 社區的傾向和積極程度來看,隨著 Swift 開源日期的鄰近,大家都在準備有一番作為,我們也希望這門語言能繼續健康發展下去。