LocalizedStringKey-多語系String使用

小更新一篇 — — — 關於國際化文字顯示問題

平常在寫APP時,系統文字或是提示等各式文字都會以中文顯示,那如果要同時給中、英文使用者使用的話該怎麼辦呢?

全部Code寫一版英文版?使用翻譯功能? NoNoNo

這時候我們可以使用LocalizedStringKey來解決這個問題,當Developer使用LocalizedStringKey的時候,系統會自動偵測使用者的系統語言,並加以轉換成使用者的語言。

具體該怎麼做?

首先我們必須在Project本身定義你所需要的語系類別,打開Project->Info->Localization,如下圖所示

點選後處理些相關設定後,系統會自動生成一個File,File的名稱會是Localizable{Language Name}

像是這樣的檔案

在相對應的語言中填入你的文字內容,並依照下圖的格式撰寫,由於我的Project是base on English,所以前面必須是英文,後面是對應語系,這一點需要注意,不然無法顯示成功。

在這邊完成你所需要的文字後,就可以開始編輯專案文字!
在需要的地方放入String,使用(fromat:__)後填入NSLocalizedString(文字內容,comment:這邊是註記給其他開發者看的,若不需則空白即可)

最後在這邊撰寫String時需注意,若Base on English也必須寫英文版,基於中文則寫中文版,否則編譯也不會成功,因此可以看到我上方的String內容也是英文。
這樣就可以成功根據使用者的系統切換語言內容啦!

--

--