2010年9月12日 星期日

How to develop a multi-language app

目前 iPhone 的普及應該已經算是接近國民機的等級了, 在世界各地 iPhone 依然都還
是最搶手的手機之一, 若有想要在 iPhone 上面開發應用程式, 操作的使用界面就不能
單單只用自己國家的語言顯示, 若是企圖想要將自己的 app 發佈到其他國家, 多國語
系的支持就會是必要的.  至於要如何在 iPhone 上面開發多國語系的 app 呢?其實步驟
相當簡單, 首先你先新建一個 windows-base 的新專案, 並如下圖般的新增檔案(New File)


選擇 "Resource" 裡的 "Strings File" 選項

此新增的檔案名稱命名為 "Localizable.strings", 接著依照下圖點選 "Get Info"

開啓 Info 視窗之後, 點擊左下角的 "Make File Localizable" 並選到 "General" tag
此時在你會看到可以新增語系的選項"Add Localization", 若要新增繁體中文則輸入
zh_TW, 而簡體中文則輸入 zh_CN, 在下圖的語系中, 支援了三種



當完成之後會在專案檔案列表中看到 "Localizable.strings" 底下會產生語系字串檔
以筆者的例子而言, 會有三個檔案 "English" , "zh_TW", "zh_CN"


分別在此三個檔案裡面分別輸入不同語系字串內容
English :

"MultiString"="English Version";

zh_TW :
"MultiString"="繁體版本";

zh_CN :
"MultiString"="简体版本";




到目前為止, 已經完成了多國語系開發所需要的準備工作, 接下來就是示範如何
將他們呈現在 iPhone 畫面上.
開啓專案裡的 MultiLanguageAppDelegate.m, 並在 didFinishLaunchingWithOptions
裡面增加如下內容:


    CGRect frame = CGRectMake(10.0, 100.0, 200.0, 40.0);
    UITextView *text = [[UITextView alloc]initWithFrame:frame];
    [text setTextColor:[UIColor blackColor]];
    [text setFont:[UIFont systemFontOfSize:24]];
    [text setText:NSLocalizedString(@"MultiString",nil)];
    [window addSubview:text];
    [text release];
    

此時只要編譯並直接執行 iPhone , 然後在 Simulator 裡切換不同語系, 就會看到不同
的顯示字串

完整的 MultiLanguage 範例可以到 這裡 下載

沒有留言:

張貼留言