国际化和判断当前语言环境
轉過來的資料,國際化和判斷當前語言環境! 1、IOS程序名稱國際化 1.1 新建一個Single View app模版項目,命名為Localization。 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 { [super viewDidLoad]; UILabel *label = [[UILabel alloc] init]; label.frame = CGRectMake(20, 40, 250, 60); label.text = NSLocalizedString(@"key", @""); [self.view addSubview:label]; } 運行 設置項里切換英文 3、如何在運行的時候判斷現在運行環境是哪個語言? 3.1 獲得所支持的語言 NSUserDefaults *defaults = [ NSUserDefaults standardUserDefaults ]; // 取得 iPhone 支持的所有語言設置 NSArray *languages = [defaults objectForKey : @"AppleLanguages" ]; NSLog ( @"%@" , languages); 運行,打印結果: ( en, "zh-Hant", "zh-Hans", fr, de, ja, nl, it, es, pt, "pt-PT", da, fi, nb, sv, ko, ru, pl, tr, uk, ar, hr, cs, el, he, ro, sk, th, id, "en-GB", ca, hu, vi ) "zh-Hant" 繁體中文 "zh-Hans", 簡體中文 這段代碼獲取當前系統支持的語言。 3.2 獲取當前使用語言 NSArray *languages = [NSLocale preferredLanguages]; NSString *currentLanguage = [languages objectAtIndex:0]; NSLog ( @"%@" , currentLanguage); 打印結果: en 用獲取到的當前語言,和支持的語言做字符串對比,就可以知道是那種語言了。 if([currentLanguage isEqualToString:@"en"]) { NSLog(@"current Language:en"); } 著作權聲明:本文由http://www.cnblogs.com/stoic/原創,歡迎轉載分享。請尊重作者勞動,轉載時保留該聲明和作者博客鏈接,謝謝!
轉載于:https://www.cnblogs.com/zhidao-chen/archive/2012/08/17/2643946.html
總結
以上是生活随笔為你收集整理的国际化和判断当前语言环境的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 转 ofbiz的webservice接口
- 下一篇: Action 参数的取值及其含义