Quantcast
Channel: swift – AppCoda
Browsing all 172 articles
Browse latest View live

Image may be NSFW.
Clik here to view.

利用 Google Translation API 添加即時翻譯功能 讓你的 App 更加升級!

在 Google 為開發者提供的服務和 API 中,其中一個就是雲端翻譯 API,它能提供基於機器學習 (Machine Learning, ML) 的翻譯功能,將任何字串轉換成任何支援的語言形式。目前所支援的語言清單已經為數眾多,在未來也只會更完整。Google 提供了預先訓練的翻譯模型,但我們也可以訓練客製化的模型。在本次的教學中,我們馬上就會看到,翻譯是可以如此的快速、精準及高品質過程。...

View Article


Image may be NSFW.
Clik here to view.

給 Swift 工程師的後端指南:用 Kitura 來架設自己的 API 後台

身為一個 Swift 開發者,每天撰寫著 iOS/macOS/tvOS/watchOS...

View Article


Image may be NSFW.
Clik here to view.

SwiftUI 初體驗: 建構一個簡單 App 讓你了解 SwiftUI 有多強大!

在今年 WWDC 2019 大會之中,最令人振奮的主題演講莫過於開發者工具的改善,而其中最大而最棒的消息就是 SwiftUI 的發佈。SwiftUI 是一個全新的框架,讓你用更少程式碼、並以宣告的方式,來設計及開發使用者介面。 SwiftUI 與 UIKit 不同,UIKit 通常要配合 storyboards 一起使用,而 SwiftUI 則完全建構在程式碼之上。不過,SwiftUI...

View Article

Image may be NSFW.
Clik here to view.

Swift DSL 實作:利用 Swift UI 寫出簡單又明瞭的 Auto Layout DSL

今年可以說是 Swift DSL 元年,建造者函數 (Builder functions) 與 SwiftUI 讓開發者們看到在 Swift 內設計內嵌 DSL 的各種可能性。雖然這樣說,但 Swift 一直以來都提供了許多 DSL 實作的功能,只是還沒有出現在官方框架而已。舉例來說,我們可以利用自訂運算子 (Operators) 與下標 (Subscripts) 等功能,來寫出簡單又明瞭的...

View Article

Image may be NSFW.
Clik here to view.

利用 SwiftUI 建立表單 UI 體驗更互動的開發過程!

在上一篇教學中,我們簡單介紹了 SwiftUI 的基礎知識,並帶你建構了一個簡單的使用者介面。經濟一星期的探索,即使這個框架現階段還是有些 Bug,但我真的很喜歡利用這個框架來建構使用者介面!這個框架為開發者提供了一個新的方式來開發 UI,讓你以更少的程式碼建構出相同的 UI。 對一些開發者來說,宣告式語法 (Declarative Syntax)...

View Article


Image may be NSFW.
Clik here to view.

IGListKit 的演化:一起來看 Instagram 如何逐步解決 App 問題!

IGListKit + MVVM 是 Instagram 對於 iOS UICollectionView UI 與數據解耦的解決方案,IGListKit 的設計理念是以數據驅動,來解決不同 Team 之間的需求,包含不同的數據與不一樣的 Layout。 有關於 Code 說明與範例,我建議你搭配原始碼參考閱讀 IGListKitArchetype。 原始 UICollectionView...

View Article

Image may be NSFW.
Clik here to view.

利用 Xcode 11 的預覽功能 輕鬆測試 App 在 Dark Mode 下的表現

前一陣子,Apple 公開了 iOS 13 第一個測試版本。對一般使用者而言,這個新版本最大的亮點一定是深色模式 (Dark mode)。在設定內滑動開啟此功能後,iOS 就會讓一切變成深色系模式。在深色模式下,電話操作系統會自動為系統內所有的 Apps 和螢幕套用深色主題。一些 Apple 內建的 App 像是 Mail 和日曆,在這個模式下看起來非常好。但是,對於其他開發者開發的 App...

View Article

Image may be NSFW.
Clik here to view.

製作物件池 (Object Pool) 重複利用物件 讓你大大提升開發效能!

建造物件是一件耗時耗力的事。除了需要配置記憶體給它之外,可能還會牽涉到排版、渲染或載入外部資源等耗費大的動作。WKWebView 與 MKMapView 就是這樣的例子,都需要大量的時間去啟動。如果只有一次兩次的話還好,但如果它們經常出現的話,使用者就要常常等它們載入,很影響體驗。 解決的辦法很簡單:重複利用這些物件,省去生成這些物件所需的時間。...

View Article


Image may be NSFW.
Clik here to view.

RESTful API 教學:用 Swift 建立屬於自己的輕量 REST 程式庫!

現今大部分的 App 都會與伺服器溝通來交換資料,為了達到這個目的,它們多採用 RESTful API,又稱為 RESTful 網路服務 (Web Serivce)。App 可以使用 REST 傳送請求 (Request) 到伺服器,然後伺服器會回傳回應 (Response) 給使用者端 App。整個通訊是基於 REST...

View Article


Image may be NSFW.
Clik here to view.

利用 UIViewPropertyAnimator 製作進階動畫 為 App 增強使用者體驗!

動畫很酷,它們是 iOS Human Interface Guidelines(介面設計指南)的重要組成部分。動畫可以幫助開發者吸引使用者注意重要的事情,或者替 App 添加一些樂趣。 在 iOS 中,有幾個方法可以實作動畫,最常見到的可能就是 UIView.animate(withDuration:animations:)。你亦可以使用 CABasicAnimation...

View Article

Image may be NSFW.
Clik here to view.

讓 iPad App 支援 Apple Pencil 2 大大增強使用者體驗!

在 2018 年 10 月,Apple 推出了全新的 iPad Pro 和 Apple Pencil 2.0。不同於上一代的 Apple Pencil,這次官方還為開發者提供了一些有趣的 API 應用方式,以增強 App 的功能與使用者體驗 (User Experience)。在本篇教學中,我將讓你了解如何讓你的 App 支援 Apple Pencil。 來開始吧! 我們將會建立一個名為...

View Article

Image may be NSFW.
Clik here to view.

使用 IBDesignable 與 IBInspectable 製作更美觀的 UI 元件

一些開發者不喜歡使用介面建構器 (Interface Builder) 來建構 App UI。一切都可以使用程式來撰寫,即使是 UI 也不例外。我個人比較喜歡混合 Storyboard 與程式來佈局 App。 不過如果要教導初學者使如何建構 App,介面建構器比較能夠無痛上手。使用介面建構器來設計 App UI 是非常直覺的,即使沒有任何 iOS...

View Article

Image may be NSFW.
Clik here to view.

結構化 RESTful API 模組與功能 大大提升程式碼的易讀性!

日常工作中,常常需要與後端串接 RESTful API,然而 API 網址常常很難管理與統一路口,今天這篇文章,想與大家分享在公司的經驗,一起規範出一整套 RESTful API 串接的體系與模組。今天這篇文章需要大家搭配源碼閱讀。讓我們開始吧! 要點內容 統一 API 底層入口,利用泛型來解決所有 JSON Data to Model 轉換 規範 API Function 結構,不再讓 URL...

View Article


Image may be NSFW.
Clik here to view.

SwiftUI 小技巧:利用 border 修飾符 輕鬆為按鈕或文本繪製邊框

有了 SwiftUI ,我們就可以使用 border 修飾符,輕鬆在按鈕 (button) 或文本 (text) 外圍繪製邊框,而且這方法更適用於所有視圖!比如說,你想要創建一個這樣的按鈕: 我們可以在按鈕物件上應用 border 修飾符,來創建有顏色邊框的按鈕: 但是,如果你的設計師想你創建一個像這樣的圓角邊框按鈕,你可以怎樣做呢? 在 Xcode 11 beta 6 版本推出之前,你可以使用...

View Article

Image may be NSFW.
Clik here to view.

利用 Swift 5.1 新功能實作 Fluent Interface 讓程式碼更易讀流暢!

最近,SwiftUI 正如火如荼地在全世界進行公開測試。如果你也有經意或不經意地接觸到 SwiftUI,那你可能會發現,它在設定 View 性質的語法上,跟我們以前學過的很不一樣。 一般在設定物件的時候,我們通常是這樣寫的: 但是在 SwiftUI 裡,我們卻得這樣寫:...

View Article


Image may be NSFW.
Clik here to view.

利用 ARKit 偵測與追蹤臉部動作 建立絢麗的使用者體驗

去年 Apple 推出的新功能中,其中一個最創新的功能就是原深感測鏡頭 (True Depth Camera)。原深感測鏡頭對軟硬體工程師來說,支援了 FaceID 這個安全的面部識別系統;而對於開發者,原深感測鏡頭就開創了許多可能性,尤其是在基於臉部互動 (face-base interactions) 這方面。 在開始這篇 ARKit...

View Article

Image may be NSFW.
Clik here to view.

SwiftUI 小技巧:在 iOS 13 實作 Context Menu 加強與設備的互動!

較早之前,Apple 正式發佈了 iOS 13。當中除了深色模式 (Dark mode) 和其他新功能外,最新版本的 iOS 還展示了一種與設備互動的新方法,就是 Context Menu 。 Context Menu 功能與 3D Touch 中的 Peek & Pop 類似。兩者其中一個最大的分別,就是此功能可在所有運行 iOS 13 及以上版本的設備上使用,即使該設備不支持 3D...

View Article


Image may be NSFW.
Clik here to view.

從零打造基本版 Combine 認識 Functional Reactive Programming

這篇文章可搭配投影片版閱讀。 Apple 平台的開發者社群對於 FRP (Functional Reactive Programming ,函數式反應式程式設計) 的接受,相對於網頁開發者來說算是晚的。即使有了 RxSwift、ReactiveSwift 等開源的 FRP 框架流行,FRP 似乎還是被社群視為是一個艱深難學、不適合一般人的概念。不過,這樣的觀感正在改變中。隨著 Apple 在...

View Article

Image may be NSFW.
Clik here to view.

利用 SwiftUI 控件 讓你更彈性地設計專屬你的按鈕!

按鈕可以啟動 App 的特定動作,可以客製化背景,也可以加入標題或圖示。這個系統針對大部分使用狀況,提供了一些預先設計好的按鈕樣式。你也可以完全客製自己的按鈕。 - Apple 官方文件 我相信我不需要再解釋按鈕的用途,這是一個非常基本的 UI 控制元件,你在所有的 App 中都會看到按鈕的蹤影。按鈕可以處理使用者的觸控動作,以觸發一些動作。倘若你之前有學過 iOS 程式設計的話,SwiftUI 的...

View Article

Image may be NSFW.
Clik here to view.

善用狀態機架構 大幅簡化 View Controller !

我們常常會碰到一個 View Controller 要處理不同狀態的情況,比如說,它本身就提供了編輯與非編輯狀態。如果資料是從網路 API 抓回來的話,那可能要處理載入與錯誤狀態;如果資料缺乏內容的話,也許還要加上空白狀態。這些狀態每一個在處理的事情可能很簡單,但如果全部都丟給同一個 UIViewController 物件去處理的話,那它一定馬上就成為所謂的 Massive View...

View Article
Browsing all 172 articles
Browse latest View live