【iOS】淺談多語言本地化(國際化)

廢話

一直以來都在國內(nèi)小公司,做的應(yīng)用也只是面向國內(nèi)用戶口四,所以在應(yīng)用中基本上是不做本地化(國際化)處理的孵运,畢竟不管是App內(nèi)容的產(chǎn)出,還是使用者都是中文的蔓彩。
??但是不久就要入職一家我自己覺得還算牛逼的公司治笨,做的App都是面向國際用戶的,所以稍微整理了一下關(guān)于iOS本地化(國際化)的知識(shí)赤嚼。

配置工程本地化(國際化)

1.選中項(xiàng)目;
2.選中PROJECT(默認(rèn)是選中TARGETS旷赖,切換下);
3.Info—>Localizations—>設(shè)置多語言環(huán)境;
4.點(diǎn)擊加號(hào)更卒,添加你需要的語言等孵;

1.png
應(yīng)用名稱本地化(國際化)

1.New File 選中Resource->Strings File;
2.命名為InfoPlist.string;
3.選中InfoPlist.strings;
4.在Xcode右邊欄找到Localization;
5.在Localization中點(diǎn)“+”進(jìn)行配置。(如沒有則點(diǎn)擊 XCode—>View—>Utilities—>File Inspector)

2.png

然后你只需要在InfoPlist.string展開文件下蹂空,編輯對(duì)應(yīng)的語言文件:

CFBundleDisplayName ="多語言本地化";

這個(gè)你加不加引號(hào)都是無所謂的俯萌,但是我覺得還是加上是最好的,自己的理解是上枕,字符串嘛咐熙。

最后,編輯Info.plist:
??打開Info.plist,添加一個(gè)新的屬性Application has localized display name, 設(shè)置其類型為boolean辨萍,并將其value設(shè)置為YES即可棋恼。

3.png
本地化文字

在應(yīng)用中,承載文字的控件很多:UILabel分瘦、UITextField蘸泻、UITextView等等,所以在做本地化處理的時(shí)候嘲玫,我覺得這一步是至關(guān)重要的悦施。

1.New File 選中Resource->Strings File;
2.命名為Localizable.string;
3.選中Localizable.strings;
4.在Xcode右邊欄找到Localization;
5.在Localization中點(diǎn)“+”進(jìn)行配置。(如沒有則點(diǎn)擊 XCode—>View—>Utilities—>File Inspector)

在Localizable.strings展開對(duì)應(yīng)語言的文件中以key->value的形式添加所需要本地化的文字去团。

"Hello" ="你好";
"Hello %@" ="你好 %@";

在代碼中使用NSLocalizedString(<#key#>, <#comment#>)來讀取本地化字符串抡诞。

NSString *string = NSLocalizedString(@"Hello", nil);
NSString *string = [NSString localizedStringWithFormat:NSLocalizedString(@"Hello %@",nil), @"狍子君"];

iOS默認(rèn)情況下本地化strings文件名是Localizable穷蛹,如果你命名成其他的了,比如paozijun.strings昼汗,那么在使用過程中肴熏,你需要NSLocalizedStringFromTable(key, @"paozijun", nil)來讀取本地化字符串,中間那個(gè)是@"paozijun"文件名。

本地化圖片

在不同語言的Localizable.strings中指定不同的圖片名稱顷窒,通過NSLocalizedString()獲取不同的圖片名稱后進(jìn)行顯示不同的圖片蛙吏。

本地化StoryBoard

因?yàn)楸救碎L期純代碼工作,這個(gè)就不多說了鞋吉,也說不清鸦做。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市谓着,隨后出現(xiàn)的幾起案子泼诱,更是在濱河造成了極大的恐慌,老刑警劉巖赊锚,帶你破解...
    沈念sama閱讀 221,695評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件治筒,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡舷蒲,警方通過查閱死者的電腦和手機(jī)耸袜,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,569評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來阿纤,“玉大人句灌,你說我怎么就攤上這事夷陋∏肥埃” “怎么了?”我有些...
    開封第一講書人閱讀 168,130評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵骗绕,是天一觀的道長藐窄。 經(jīng)常有香客問我,道長酬土,這世上最難降的妖魔是什么荆忍? 我笑而不...
    開封第一講書人閱讀 59,648評(píng)論 1 297
  • 正文 為了忘掉前任,我火速辦了婚禮撤缴,結(jié)果婚禮上刹枉,老公的妹妹穿的比我還像新娘。我一直安慰自己屈呕,他們只是感情好微宝,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,655評(píng)論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著虎眨,像睡著了一般蟋软。 火紅的嫁衣襯著肌膚如雪镶摘。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,268評(píng)論 1 309
  • 那天岳守,我揣著相機(jī)與錄音凄敢,去河邊找鬼。 笑死湿痢,一個(gè)胖子當(dāng)著我的面吹牛涝缝,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播譬重,決...
    沈念sama閱讀 40,835評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼俊卤,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了害幅?” 一聲冷哼從身側(cè)響起消恍,我...
    開封第一講書人閱讀 39,740評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎以现,沒想到半個(gè)月后狠怨,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,286評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡邑遏,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,375評(píng)論 3 340
  • 正文 我和宋清朗相戀三年佣赖,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片记盒。...
    茶點(diǎn)故事閱讀 40,505評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡憎蛤,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出纪吮,到底是詐尸還是另有隱情俩檬,我是刑警寧澤,帶...
    沈念sama閱讀 36,185評(píng)論 5 350
  • 正文 年R本政府宣布碾盟,位于F島的核電站棚辽,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏冰肴。R本人自食惡果不足惜屈藐,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,873評(píng)論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望熙尉。 院中可真熱鬧联逻,春花似錦、人聲如沸检痰。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,357評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽攀细。三九已至箫踩,卻和暖如春爱态,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背境钟。 一陣腳步聲響...
    開封第一講書人閱讀 33,466評(píng)論 1 272
  • 我被黑心中介騙來泰國打工锦担, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人慨削。 一個(gè)月前我還...
    沈念sama閱讀 48,921評(píng)論 3 376
  • 正文 我出身青樓洞渔,卻偏偏與公主長得像,于是被迫代替她去往敵國和親缚态。 傳聞我的和親對(duì)象是個(gè)殘疾皇子磁椒,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,515評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容