Apple 已提供 Xcode 27.2 Beta 的發布說明,但 Beta 不代表所有穩定版都已有相同功能或選單位置。查看 Xcode 27.2 發布說明
症狀: SwiftUI 頁面文字寫在程式碼裡,切換語言時不知從何下手。
最快解法: 優先用 Xcode 的 String Catalog 管理介面文字,不要手動拼接兩種語言的句子;完成後切換語言,檢查長短文字與動態內容。實際建置與驗收要有可用的 Mac 和 Xcode,沒有本地設備時再評估遠端 Mac。

這篇適合你:剛開始用 SwiftUI 寫課程作品,想加入中文與英文介面。
已有文字散落在程式碼裡,想集中整理翻譯。
正準備交作業或小組作品,需要確認切換和交接流程。

最後更新於 2026-09-26;資料核對自 Apple 的 String Catalog 本地化文件、多語言支援文件及 Xcode 發布說明。版本功能與選單會變動,開始操作前請以你安裝版本的文件和介面為準。

iOS 27 App 中英雙語:先分清楚哪些文字要翻譯

String Catalog 可以集中管理 App 的可本地化文字,讓不同語言的內容對應到程式中的介面字串。Apple 的本地化與 String Catalog 說明介紹了相關工作方式;你不必先把專案所有圖片、資料和頁面翻完,先做好課程作品中一個完整頁面即可。

可以本地化的通常是使用者看得到的內容,例如頁面標題、按鈕名稱、表單提示和錯誤訊息。以下內容要分開處理:

  • 介面文案:「開始練習」、「尚無紀錄」等,通常應提供對應語言。
  • 使用者或產品資料:姓名、商品名稱等,是否翻譯取決於資料本身的需求,不能因為它是字串就自動改寫。
  • 變數與除錯訊息:內部識別值、開發用紀錄通常不是介面文案,不應直接當成翻譯項目。

如果你正在建立第一個頁面,先列出畫面上每段固定文字,再檢查它是否真的要讓使用者看到。這樣比把程式裡每個字串都塞進翻譯目錄更容易驗收。

已有 SwiftUI 頁面的文字整理

假設你的課程頁面有標題、說明文字和按鈕,先逐項確認它們的用途。把使用者看得到的固定文案改成可本地化的寫法,再依 Apple 文件說明,透過 Xcode 的本地化流程整理文字。不同版本的編輯器和選單可能不同;不要把某個版本的選單路徑當成所有 Xcode 版本通用的規則。

Xcode 沒有把某段文字加入 String Catalog 時,依序檢查:

  • 它是不是直接出現在介面上的文字,而不是變數、除錯資訊或外部資料?
  • 目前寫法是否符合 Xcode 可擷取的本地化字串形式?
  • 專案的本地化設定和目錄是否已更新,並在修改後重新建置或檢查?
  • 這段文字是否來自動態組合、第三方內容或其他不會自動擷取的位置?

Apple 的應用程式文字翻譯準備文件可用來核對字串準備方式。自動擷取是整理工作的輔助,不是保證:目錄裡找不到的項目要追查來源,不能只靠重開編輯器判斷完成。

動態句子與數量內容

「歡迎,名字」這類畫面含有動態值;列表數量、剩餘項目或帶數字的提示,也會隨資料改變。若把一句話拆成多個翻譯片段,再於程式中手動串接,不同語言需要的語序可能不同,標點和空格也容易不自然。

比較穩妥的做法,是把整句當成一個有上下文的本地化內容,使用系統支援的格式呈現動態值或數量變化。Apple 的多語言 App 支援說明可協助你確認資源安排與語言支援的原則。不要自行假設每種語言都用相同的數量句型;翻譯完成後,要以實際資料測試完整句子。

小組翻譯與語言交接

小組作業常見的問題不是缺少翻譯,而是翻譯者不知道文字出現在哪個畫面、對誰說,或收到的檔案沒有正確匯回專案。交接前先整理每個待翻譯項目的畫面位置、使用情境和必要限制,例如按鈕字數不宜過長、錯誤訊息要說明下一步。

Apple 提供本地化資料的匯出流程,方便交由翻譯者處理;可參考匯出本地化內容的官方說明。匯出或匯入完成後,仍要在專案中確認語言與內容有正確對應。機器翻譯可以協助起草,但不等於人工檢查:尤其是課程專有名詞、操作指示和語氣,最好由熟悉內容的人校對。

沒有本地 Mac 時的練習分流

SwiftUI 本地化有一部分可以先在任何可用電腦上規劃:列介面文字、補翻譯上下文、確認兩種語言的內容是否一致。但要用 Xcode 建置並執行 App、查看實際排版,就需要符合要求的 Mac 環境。Apple 的 Xcode 系統需求會隨版本調整,安裝前應核對你打算使用的 Xcode 版本。

按課程要求選路線:

  • 若作業只要提交文案清單或翻譯規劃,先完成非平台專屬部分,並詢問老師是否需要實際執行畫面。
  • 若要求提交可執行的 SwiftUI 專案或切換語言的截圖,借用符合課程要求的 Mac,再按作業期限安排測試。
  • 若校園設備無法安裝或使用 Xcode,但課程必須建置,評估遠端 Mac;先確認連線方式、檔案交接和課程政策。
  • 若沒有明確的 iOS 專案需求,不必為了練習一般程式概念立即租用 Mac;可先完成跨平台的文字設計與資料整理。

Windows 可以用來整理翻譯表與課程筆記,但不能取代 Xcode 的 iOS 建置及實際介面驗收。你也可以先看沒有 Mac 學 iOS 開發的可行路線,依課程要求分辨哪些工作可先做、哪些必須在 Mac 上完成。若要比較雲端 Mac 的使用方式,可參考遠端 Mac 環境選擇。

中段常見問題

SwiftUI 本地化是否等於整個 App 都要翻譯?
不必。先選一個課程頁面,整理使用者可見的固定文字,再驗收語言切換。未使用的畫面、外部資料和圖片資源可按專案需求分批處理。

String Catalog 有翻譯內容,是否就代表完成?
不是。目錄只能說明資源已整理,不能證明執行結果沒有截斷、文字語序自然或動態內容正確。要切換語言並查看實際畫面。

翻譯檔交接後,還需要在 Xcode 檢查嗎?
需要。匯入後確認翻譯對應到正確語言與字串,並執行 App 檢查畫面。檔案成功交接不等於功能驗收通過。

提交前的語言與畫面驗收

依 Apple 的執行時本地化測試說明,在執行 App 時檢查本地化結果。以下清單適合用於課程頁面,不應只憑 String Catalog 檔案存在就打勾:

  • 確認預設語言下,頁面標題、按鈕和提示都顯示預期文字。
  • 切換到另一種語言,逐一查看同一組介面內容。
  • 檢查較長的翻譯是否擠壓按鈕、超出容器或遮住其他內容。
  • 讓動態值實際出現在句子中,確認前後文、標點與語序自然。
  • 比對翻譯內容與畫面用途,確認沒有把內部資料或除錯訊息當成介面文字。
  • 若由小組交接,確認匯入的內容在專案中可見,並保存實際執行畫面作為驗收紀錄。

兩條實作路線比較

路線 適合情況 優點 需要留意
先整理文案,再於 Mac 上建置 作業尚未要求即時執行,或目前只能使用非 Mac 電腦 可先完成字串盤點、翻譯上下文和小組分工 不能取代 Xcode 執行;提交前仍要安排 Mac 驗收
使用本地或遠端 Mac 完成 課程要求建置、切換語言或提交實際畫面 可在 Xcode 中整理目錄並檢查執行結果 先核對課程對 Xcode 環境、檔案保存和交接的要求

提交時的驗收項目

檢查項目 通過條件 未通過時先查
預設語言 主要畫面文字完整且語意正確 字串來源、目錄對應和專案語言設定
另一種語言 文字有翻譯,介面沒有明顯擠壓 翻譯內容長度與實際畫面
動態內容 值帶入後句子讀起來自然 是否把完整語意拆成多段拼接
小組交接 匯入後項目仍對應到正確語言 匯出、匯入流程與上下文說明
執行驗收 已查看 App 實際結果 不要只以資源檔存在當作完成證明

若你現在以 Windows 為主,直接用它完成 iOS 建置會遇到缺少 Xcode 與 macOS 執行環境的限制;學校電腦也可能不允許安裝所需工具,而自行維護另一套環境會增加交接與排錯工作。若課程確實要求你建置和切換語言,短期使用遠端 Mac 可以讓你在 Mac 與 Xcode 環境中完成驗收;你可先查看 MACCOME 遠端 Mac 方案,再按作業周期決定是否需要。若你需要長期、固定且高負載使用,或必須連接本地實體設備,則應先比較自有 Mac 與其他合適環境,不必為單次練習直接租用。