例如:
/* Class = "IBUILabel"; text = "Label"; ObjectID = "8"; */
"8.text" = "Label";
/* Class = "IBUILabel"; text = "Label"; ObjectID = "11"; */
"11.text" = "Label";
/* Class = "IBUILabel"; text = "Label"; ObjectID = "14"; */
"14.text" = "Label";
/* Class = "IBUILabel"; text = "name"; ObjectID = "20"; */
"20.text" = "姓名";
/* Class = "IBUILabel"; text = "sex"; ObjectID = "24"; */
"24.text" = "性别";
/* Class = "IBUIButton"; highlightedTitle = "HaHa"; ObjectID = "28"; */
"28.highlightedTitle" ="HaHa";
/* Class = "IBUIButton"; normalTitle = "Button"; ObjectID = "28"; */
"28.normalTitle" ="Button";
/* Class = "IBUISegmentedControl"; 32.segmentTitles[0] = "First"; ObjectID = "32"; */
"32.segmentTitles[0]" ="First";
/* Class = "IBUISegmentedControl"; 32.segmentTitles[1] = "Second"; ObjectID = "32"; */
"32.segmentTitles[1]" ="Second";
對應的English的檔案也修改成英文版的
以上是本地化的view中靜态的label控件中的資料,如果是動态的,就是如果在.h檔案相關聯的資料控件,那麼就要現在.m檔案中先寫上例如:
打開終端,輸入cd 然後将檔案拖放在終端中,自動生成對應的路徑,然後輸入genstrings ./LocateDemo/*.m
會發現在項目中自動生成了一個Localizable.strings的檔案,然後在對應的en.lproj和zh-Hans.lproj也就是兩個對應的語言的檔案包裡面都複制一份這個檔案,
然後導入到項目中,點選相應的檔案會發現自動生成了相應的字段
/* No comment provided by engineer. */
"name" ="小明";
"sex" ="男";
将對應的中文和英文包中的檔案都改成相應的語言
建立SingleView的項目之後會發現有一個LocateDemo-Info.plist檔案,輕按兩下打開檔案,右擊->Show Row Keys/Values,拷貝CFBundleDisplayName,到InfoPlist.strings
中,也将這個檔案本地化一下,生成兩中語言的檔案,然後
在各個語言對應的檔案中修改CFBundleDisplayName = "English";還有“中文”,後面測試的話會發現如果模拟器設定的語言不一樣,那麼這個程式對應的應用名也不一樣。
例如兩種語言,我想根據英語和中文不同的環境導入不同的國旗,美國國旗和中國國旗,在界面中拖放一個ViewImage,然後就圖檔資源拖放近項目,也點選一下本地化,在生成一個 另外一種語言環境下的圖檔,然後在對應的檔案中修改這個圖檔,但必須確定兩個檔案中的圖檔名字是一樣的才行。
切換至英文模式:

在setting中設定,切換回中文的
對應的應用檔案名也是:
<a target="_blank" href="http://download.csdn.net/detail/s10141303/6039621">項目下載下傳</a>
本文轉蓬萊仙羽51CTO部落格,原文連結:http://blog.51cto.com/dingxiaowei/1366404,如需轉載請自行聯系原作者