swift
在 Xcode 12 使用 StoreKit 測試 App 內購 讓你加速開發進度
雖然 WWDC20 結束至今已經過了五個月,我們還在討論今年發佈的新框架、API、以及改善。在這麼多新功能中,有一些會對我們實作 App 內購 (In-App Purchase) 時有重大影響,那就是我們可以在 Xcode 12 中本地測試 StoreKit 的新功能。 現在,我們必須停止原本的開發流程,並到 [...]
利用 LibraryContentProvider 重用 SwiftUI 視圖 大大加速開發過程!
在 WWDC 2020 中,Apple 為生態系統的整個開發過程帶來了許多新功能和改善,肯定每個開發者都能從中找到覺得興奮的新功能。部分新功能就是關於 Xcode 12 及 SwiftUI 的,我們在先前的文章已經簡單地介紹過 Xcode 12 及 SwiftUI 的新功能。開發者可以利用新的 LibraryContentProvider [...]
用 Swift 建造自己的輕量級 Dependency Injection 與 Inversion Of Control!
你聽過依賴注入嗎?身為 iOS 的開發者,是否對於依賴注入 (Dependency Injection) 與反轉控制 (Inversion Of Control) 的設計模式感到心動呢?接下來就讓我們手把手,不依賴第三方類別庫,打造屬於自己的輕量級 DI 與 IoC,增加程式碼的可讀性與可測試性,也一併提升可維護性與彈性。這篇文章建議大家搭配源碼閱讀。 [...]
Xcode 12 和 Swift 5.3 新功能詳解 讓你寫出更強大的程式碼!
WWDC 2020 上個月首次在前所未有的條件下完成,全球所有開發者都有機會坐在前排,了解 Apple 今年即將發佈的所有新功能和改進。與往常一樣,Apple 介紹了許多新東西和大進步,相信我們每個人都非常興奮,希望作很多新嘗試。 這篇文章旨在介紹 Xcode 和 Swift [...]
SwiftUI 小技巧:簡單在列表視圖移除分隔線 (Line Separator)
SwiftUI 的列表視圖 (List View) 其實和 UIKit 的表格視圖 (Table View) 很類似,它們都是讓開發者把項目一列列地呈現,而預設設定上,每一列資料都會用分隔線 (line separator) 分開。在 UIKit 中,我們可以很簡單地改變分隔線的外觀與顏色;然而,SwiftUI 就沒有一個官方方法來移除分隔線。這麼一來,我們需要使用 [...]
使用 UIViewRepresentable 協定 讓你輕鬆建立 SwiftUI TextView
我非常喜歡使用 SwiftUI 框架,但是,與多數的新框架一樣,SwiftUI 也有一個缺點,就是它未能提供所有 UIKit 有的 UI 控件,比如說,你無法在 SwiftUI 找到與文本視圖 (text view) 相對應的控件。幸好,Apple 有一個 UIViewRepresentable 協定,讓你可以輕鬆打包 (wrap) 一個 [...]
Computer Vision :利用矩形偵測和文字辨認 打造一個掃描信用卡的 App
自 iPhone 問世以來,攝影功能一直是 Apple 專注的核心。幾年下來,他們釋出了許多驚艷的功能,讓大家無法捨離 iPhone。因為 Apple 不斷增加圖像智能功能,讓使用者能夠拍出更好的相片。 具體來說,Apple 在電腦視覺領域大量投資,其 2017 年釋出的 Vision 框架,也會每年推出重大更新。 [...]
Swift 5.3 新功能預覽 大大提高整體語言的品質和性能
Apple 的宣佈 Apple 於 3 月 25 日宣佈,Swift 5.3 的發佈過程已經開始了,這次的變更十分大,因為新版本將提高整體語言的品質和性能,並使 Swift 支援 Windows 和 Linux 等多個平台。讓我們詳細看看新功能吧! Enum 可用作 Protocol Witness 現在,一個類別要擴展協定,就需要完全符合協定的要求。舉個例子,如果我們在協定中編寫了靜態 [...]
SwiftUI 教學:利用 iPad 的 Swift Playgrounds 都可以學習 App 開發!
「我手上只有 iPad 而已,我可以用它來開發 iOS App 嗎?」 這是入門開發者最常問的問題。我一般的回應都是:「不行,你需要一台 Mac,來運行 Xcode 開發 iOS 程式。」 「那 iPad 的 Swift Playgrounds 呢?我可以用這個 App 來學習 Swift 和 App 開發嗎?」 相信你已經知道 [...]
Swift 5.2 初探:有甚麼嶄新的功能等著你去探索?
隨著 Apple 推出 Xcode 11.4,Swift 5.2 也正式發佈了。 這次的版本對開發人員可說是福音,因為它著重於改善開發人員的體驗。借助改善了的診斷功能,開發人員可以更快地解決錯誤。現在,程式碼完成功能 (Code completion) 運作得更好,而且程式碼的大小和記憶體使用量也減少了。 [...]