swiftui
iOS 14 的 SwiftUI Toolbar 聰明地在佈局放置視圖
在 WWDC 2020,Toolbar 可以說是第二版 SwiftUI 中最有趣的新功能。 toolbar 是一個修飾器,讓你放置一組視圖控件,並把控件放置於想要的位置。 在預設設定下,SwiftUI 可以利用 toolbar 修飾器,聰明地把視圖設定於想要的位置,但你也可以利用 ToolbarItem 明確地設置其位置。 [...]
iOS 14 新功能一覽 一起來配合最新的 OS 更新 App!
Apple 未有任何公告便發佈了 iOS 14,讓整個開發者社群都十分驚喜。無論如何,這就是需要配合最新的 OS 來更新 App 的時候了。 首先,以下是一些 iOS 14 中你應該注意的重大改變: 在首頁引進 Widget 及 App Clips。 以新的 AppTrackingTransparency 框架來取代 IDFA,以作廣告追蹤之用(在撰寫本文的時候,Apple [...]
在 Swift 使用 Python 構建 App 克服 Python 的缺點!
一直以來,Python 都在數據科學領域佔有領導地位,然而隨著要處理的數據量與日俱增,Python 的缺點就顯而易見了,就是處理速度慢、並行處理有所侷限、和缺乏型別安全性的問題,這些對大型 App 來說都是障礙。 很明顯地,Google 已經把 Swift 視為深度學習的未來,為 [...]
在 iOS 14 使用 matchedGeometryEffect 簡單為 App 建立絢麗的視圖動畫
在 iOS 14 中,Apple 為 SwiftUI 框架引入了很多新功能,像是 LazyVGrid 以及 LazyHGrid。其中 matchedGeometryEffect 非常引人注目,這個功能讓開發者只需要幾行程式碼,就能夠創造絢麗的視圖動畫。SwiftUI 框架已經讓開發者可以簡單地使用動畫來呈現視圖的變化,而 matchedGeometryEffect [...]
利用 SwiftUI Video Player 在影片實時套用 Core Image 濾鏡!
iOS 14 的 SwiftUI 引入了播放影像檔案的原生支援。我們可以利用新的 VideoPlayer 控件,從 URLs 或本地資源中播放影像檔案。 你只需要 import AVKit,並如此傳遞 AVPlayer 實例即可: 雖然 Video Player 在裝置上運作得很好,但在模擬器上可能會出問題,尤其是從網站 URL 載入中的時候。 [...]
SwiftUI 動畫入門教學: 建立一個下載指示器
你是否曾在 Keynote 使用過奇妙的動作動畫?有了這些奇妙的動作,你可以輕易的建立兩張投影片間的滑動動畫 (slick animation)。 Keynote 會自動地分析兩張投影片間的物件,然後自動地渲染動畫。同樣,SwiftUI 也將奇妙動作 (Magic Move) 動畫帶入了 App 的開發中。動畫所用的框架是自動且神奇的。你只要定義一個視圖的兩個狀態,SwiftUI [...]
利用 LibraryContentProvider 重用 SwiftUI 視圖 大大加速開發過程!
在 WWDC 2020 中,Apple 為生態系統的整個開發過程帶來了許多新功能和改善,肯定每個開發者都能從中找到覺得興奮的新功能。部分新功能就是關於 Xcode 12 及 SwiftUI 的,我們在先前的文章已經簡單地介紹過 Xcode 12 及 SwiftUI 的新功能。開發者可以利用新的 LibraryContentProvider [...]
利用 UIViewControllerRepresentable 協定 在 SwiftUI 存取相簿並使用相機
先前我們曾探討 UIViewRepresentable 的用法,並展示了如何整合 UITextView 到 SwiftUI 專案中。雖然我們可以使用 UIViewRepresentable 協定包裝 UIKit 視圖 (View),但是視圖控制器 (View Controller) 呢?你可能需要在 App 中使用相機或存取使用者的相簿。那麼,如何將 UIImagePickerController 類別整合到 [...]
利用 SwiftUI 建立 Expandable List View 並探索 Inset Grouped 樣式!
SwiftUI 列表視圖 (list view) 和 UIKit 的 UITableView 很類似。在 SwiftUI 最初的版本中,Apple 的工程師已經將創建列表視圖的過程變得輕而易舉,我們不需要創建 prototype cell,也不需要委派 (delegate) 或 data source 的協定。我們只需要用幾行程式碼,就可以使用客製化單元格來建構一個列表視圖。在 [...]
SwiftUI 小技巧:簡單在列表視圖移除分隔線 (Line Separator)
SwiftUI 的列表視圖 (List View) 其實和 UIKit 的表格視圖 (Table View) 很類似,它們都是讓開發者把項目一列列地呈現,而預設設定上,每一列資料都會用分隔線 (line separator) 分開。在 UIKit 中,我們可以很簡單地改變分隔線的外觀與顏色;然而,SwiftUI 就沒有一個官方方法來移除分隔線。這麼一來,我們需要使用 [...]