我們所開發(fā)的應(yīng)用可能還會被不同國家不同人群使用,所以應(yīng)用也該支持多語言。當用戶切換系統(tǒng)語言時,應(yīng)用程序自動變成和系統(tǒng)語言一致的行為叫語言國際化或本地化。
話不多說,開擼:

添加語言
之后點完成,然后command+n新建String File文件,文件名為InfoPlist,注意就只能是這個名字

createfile.jpg
完成后點擊新建的文件,打開右邊的屬性檢查器

3.jpg

4.jpg

5.jpg

image.png
打開下面的文件,在English寫入:
// 后面是英文版的應(yīng)用名稱
CFBundleDisplayName = "LocalizableDemo";
在Chinese文件中寫入:
CFBundleDisplayName = "本地化demo";
此時,分別切換系統(tǒng)語言可以看到App的名稱自動變?yōu)槲覀冊O(shè)置的。
以上是設(shè)置不同語言的App名稱,接下來是應(yīng)用中的文字:
和上述操作一樣,直接新建String File文件,名稱為Localizable(注:該文件的后綴都是.string,如果系統(tǒng)沒有隱藏后綴名則要輸入Localizable.string),創(chuàng)建完成后跟上面一樣的操作,點擊該文件的Localize,勾選語言復選框,然后依然看到該文件下有多個文件。
在不同的文件中配置不同的語言,如中文:

image.png
由于我們的開發(fā)環(huán)境是英文,在English文件下面可以不用寫。
在程序代碼中這樣使用:
NSLocalizedString(@"Home", nil)
效果:

英文環(huán)境

中文環(huán)境