網頁

2013年1月16日 星期三

iOS開發筆記 - 多國語言化的第一步

最近想要將程式做個多國語言化,想將預設改成英文,先到Targets的info中,找到“Localization native development region”改成英文,如下圖


新增“Localizations”,加入“Chinese (traditional)”

再來回到Project的info,找到Localizations,如下圖



點選“+”,出現下圖,新增繁體中文(目前繁體中文為zh-Hant、簡月zh-Hans),別自作主章,往Other那邊再選下去,雖然會看到繁體中文可選,但那是沒有用的,功能不work

再來隨便選一個xib檔(若沒有就不用了),會看到右邊有個“Localizations”,裡頭已有“English”及“Chinese-Taiwan”,將“Chinese-Taiwan”勾選起來


出現底下的訊息,確定哪些已存在的檔案都要有這語言,直接全選按finish吧



再來就會看到ViewController.xib多出了繁體中文,就加入自己想加入的資料吧。

APP的顯示名稱若也想要多國語言版,找到info.strings這檔案,先確定它有沒有多國語系化,若像下圖表示沒有,先轉成UTF-16後,再按“Make localized...”即可


英文版的info.strings加入CFBundleDisplayName="English";
中文版的info.strings加入CFBundleDisplayName="中文";

記得加逗號,這樣就行了。

再來加入Localizable.strings,這才是重點。新增一個檔案,如下圖,選Strings file,命名為Localizable.strings

再來跟info.strings一樣讓它多國語系化。再來程式加入多國語系的程式碼,例如:

NSString *test = @"中文123";
改成 
NSString *test = NSLocalizedString(@"test label" , @"This is test");

在繁體中文的Localizable.strings加入 "test label"="中文123";
在英文的Localizable.strings加入        "test label"="English123";

這樣在英文語系就會顯示English123,繁體中文為中文123囉

NSLocaliaedString的第二個變數是comment用,若使用自動產生的工具,就會用到它。這部分就之後再說吧。

用模擬器測試,從中換到英,基本上可以只換語言,但地區也換會更準




然後就等待系統轉換語系,就可以看到設定變Setting,就可以查看自己剛做的囉

參考網址:


沒有留言:

張貼留言