Simon Ng

Simon Ng

軟體工程師,AppCoda 創辦人。著有《iOS 17 App 程式設計實戰心法》、《iOS 17 App程式設計進階攻略》以及《精通SwiftUI》。曾任職於HSBC, FedEx等跨國企業,專責軟體開發、系統設計。2012年創立AppCoda技術部落格,定期發表iOS程式教學文章。現時專注發展AppCoda業務,致力於iOS程式教學、產品設計及開發。你可以到推特與我聯絡。
90 篇文章
利用 Xcode 11 的預覽功能 輕鬆測試 App 在 Dark Mode 下的表現
iOS App 程式開發

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

前一陣子,Apple 公開了 iOS 13 第一個測試版本。對一般使用者而言,這個新版本最大的亮點一定是深色模式 (Dark mode)。在設定內滑動開啟此功能後,iOS 就會讓一切變成深色系模式。在深色模式下,電話操作系統會自動為系統內所有的 Apps 和螢幕套用深色主題。一些 Apple 內建的
如何在視圖和按鈕上設定特定的圓角 (Rounded Corners)
UIKit

如何在視圖和按鈕上設定特定的圓角 (Rounded Corners)

我們目前正進行一個新系列的教學,主要回答一些常見問題,從簡單的初學者問題、到複雜的進階問題亦會覆蓋到。今天我們的問題是:我知道如何在視圖 (View) 或按鈕 (Button) 上設定圓角 (Rounded Corners)。但如果我只想設定某一角為圓角,並非所有角都設定為圓角,要如何在 Swift 實現呢?
《iOS 11 App 程式設計實戰心法》正式推出電子版
Swift 程式語言

《iOS 11 App 程式設計實戰心法》正式推出電子版

一直有讀者問:「初學者那本Swift書會否推出電子書?」 今年推出的《iOS 11 App 程式設計實戰心法》,除了實體書外,我們現在正式推出電子版。內容和實體書沒有分別,主要是提供多一個選擇給大家。比起實體書,我們可以隨時更新電子版。也因為此,每本電子書我們都包含一年免費更新。 Swift 語言、Xcode和 iOS SDK
《iOS 10 App程式設計進階攻略:39個必學的開發技巧》正式推出
Swift 程式語言

《iOS 10 App程式設計進階攻略:39個必學的開發技巧》正式推出

不時也有人問何時才會推出Intermediate iOS 10 Programming with Swift 的中文版進階書。現在終於可以給你一個確實的答案,今天我們正式推出《iOS 10 App程式設計進階攻略:39個必學的開發技巧》一書。 比較特別的是今次是首次以電子書形式推出中文版。 可能你第一時間會想到: 還有兩個星期蘋果就會在WWDC公布新版的Swift,現在才推出iOS 10的書是不是遲了一點?幾個月之後又會推出新版的Xcode,
Lottie初學者教學指南:如何在iOS App設計一個令人驚豔的動畫
動畫實作

Lottie初學者教學指南:如何在iOS App設計一個令人驚豔的動畫

如果能設計一個好的UI(User Interface)動畫可以讓一個App大幅增進UX使用者體驗(User Experience),這通常就是能讓一個感覺普通的App搖身一變成為質感極佳的App,非常重要的關鍵因素。然而,設計與實現一個有意義與功能兼備的動畫是挺有難度的,尤其是,如果你需要的動畫或過場視覺效果是極為複雜的,若要實現這個需求,這將對一個iOS程式開發者是一個非常艱困的任務。 假想你並不是一個獨立開發者,你是身在一個有程式工程師與UI/UX設計師的分工團隊中,有多少次你曾得面對這樣的場景,設計師給你看了一個非常酷的動畫,
iOS開發者指南:如何使用Firebase整合Facebook登入
Swift 程式語言

iOS開發者指南:如何使用Firebase整合Facebook登入

不久前,James寫了一篇教程告訴讀者如何利用Firebase建立登入和註冊功能,現在開發人員常會使用一些聯邦式(Federated Identity)身份管理憑證,如Google登入和Facebook登入,讓用戶得以使用自己的Facebook帳戶註冊應用程序。這篇文章中,我們將學習如何使用Firebase身份驗證並且整合Facebook登入。 編者提醒:這是我們Intermediate iOS 10 Programming with Swift其中一個章節的簡化版本。現時只有英文版,中文版將於稍後推出。 在進入實作內文前,
如何在 Xcode 8 建立 iMessage 貼圖程式擴充
Swift 程式語言

如何在 Xcode 8 建立 iMessage 貼圖程式擴充

開發者可以為蘋果的 Messages 增建程式擴充,透過程式擴充與使用者互動。舉例說,你可以建立一個訊息貼圖擴充,容許使用者在iMessage 與朋友溝道時發送貼圖。或者,假若你在開發修圖程式,現在你可以透過擴充,讓使用者在不需要離開iMessage就可以修圖。這個功能確實為開發者帶來很大的創作空間。蘋果將會為 iMessage 設立 App Store 版面,到時候開發者就可以把製作好的程式擴充上架售賣。
Swift 新手系列之三:Auto Layout 介紹
Auto Layout

Swift 新手系列之三:Auto Layout 介紹

本文摘自《iOS 9 App程式設計實力超進化實戰攻略》一書,博碩授權轉載。這是Swift 新手系列的第三篇文章,如果你還沒閱讀之前所發表的文章,可從這裡開始。 Auto Layout是一個以約束條件為基礎的佈局系統(constraint-based layout system),它讓開發者能夠開發一個能自我調整型的UI,可以依照螢幕的尺寸以及裝置的方向來調整。有些初學者會覺得這個部分很難,而儘量避免去使用它,但請相信我,
Swift 新手系列之二:進階說明Hello World App的原理
Swift 程式語言

Swift 新手系列之二:進階說明Hello World App的原理

本文摘自《iOS 9 App程式設計實力超進化實戰攻略》一書,博碩授權轉載。 到目前為止,你依照步驟一步一步建立了Hello World App。整章讀完後想必心中會出現了幾個疑問: Storyboard中的視圖控制器是如何與ViewController.swift檔內的ViewController類別(class)建立連結。 showMessage()方法中的那段程式碼是什麼意思呢?它要如何告知iOS顯示一個HelloWorld訊息? @IBAction這個關鍵字是做什麼用的? 「Hello
很好! 你已成功註冊。
歡迎回來! 你已成功登入。
你已成功訂閱 AppCoda 中文版 電子報。
你的連結已失效。
成功! 請檢查你的電子郵件以獲取用於登入的連結。
好! 你的付費資料已更新。
你的付費方式並未更新。