多語言在應用程式中一般有兩種做法:
一、程式中提供給使用者自己選擇的機會;
第一種做法比較簡單完全靠自己的發揮了,這裡主要講第二種做法,主要分一下幾點:
1.本地化應用程式名稱
1.2 新建後,可以看到工作目錄結構檔案如下,單擊infoplist.strings,檢視右邊的屬性,在localization欄新增語言。
1.3 新增完成後開啟對應語言檔案,比如english的新增
cfbundledisplayname="china";
chinese檔案新增
cfbundledisplayname="
中國";
執行,如果此時你的模擬器是中文,你會看到你的程式名稱變成了 中國:
來到設定裡把語言設定成 english。此時程式名稱變成了:china
這時,程式名稱的國際化完成了。那裡面內容呢?
2、內容國際化
2.1新建localization.strings檔案
2.2 新增語言和1.1環節一樣。
2.3 新增語言內容
新增"key"="value"; 然後使用時用nslocalizedstring(@"key", @""); 讀取內容.
localization.strings english檔案新增
"key"= "english value";
localization.strings english檔案新增
"key"= "中文內容";
在viewcontroller.m 中新增uilabel實驗一下
- (
void
)viewdidload
執行
設定項裡切換英文
3、如何在執行的時候判斷現在執行環境是哪個語言?
3.1 獲得所支援的語言
nsuserdefaults
*defaults = [
nsuserdefaults
standarduserdefaults ];
// 取得 iphone 支援的所有語言設定
nsarray
*languages = [defaults objectforkey : @
];
nslog
( @
"%@"
, languages);
3.2 獲取當前使用語言
nsarray
*languages = [
nslocale
preferredlanguages];
nsstring
*currentlanguage = [languages objectatindex:0];
nslog
( @
"%@"
, currentlanguage);
4.本地化
點中你要本地化的,如「image.png」,然後xcode-> view-> utilities -> file inspector,在localization中點「+」新增chinese (zh-hans);在左邊就會出現乙個倒三角,點開就會出現(english)和(chinese)的2張圖,並且在專案資料夾中會出現en.lproj檔案和zh-hans.lproj檔案;en.lproj檔案存放的是英文版,zh-hans.lproj存放的是中文版,中英文名字一樣,我們在資料夾中直接替換就可以了,最後使用時直接使用正常名字就行了,如:「image.png」。
5.本地化其他檔案
本地化其他檔案和本地化方法類似,先在localization中新增語言,然後把對應版本拷貝到en.lproj和zh-hans.lproj資料夾中,最後引用就行了。
ios多種語言的本地化思路
多語言在應用程式中一般有兩種做法 一 程式中提供給使用者自己選擇的機會 二 根據當前使用者當前移動裝置的語言自動將我們的app切換對應語言。第一種做法比較簡單完全靠自己的發揮了,這裡主要講第二種做法,主要分一下幾點 1.本地化應用程式名稱 2.本地化字串 3.本地化 4.本地化其他檔案 1.本地化應...
iOS 語言本地化
建立localizable.strings檔案 localizable.strings新增支援語言 編寫兩個檔案中的字段 通過key value方式 通過 nslocalizedstring 相應字段 nil 獲取本地化之後的檔案。版的本地化語言實現 storyboard版的本地化語言實現 得到當前...
Localizations程式本地化語言
1 在程式檔案info.plist localizations中新增多語言支援 如使用localizable.strings localizable.strings english 英文 demotitle this is english version string2 banana string3...