iOS开发-APP语言国际化

本文来自 海之飞燕 http://v2it.win/?p=519

1、国际化就是将标签、提示信息等信息放到资源文件中,随着程序需要的语言提供对应的资源文件。以key/value对存储,每个资源的key值不变,value随着需求改变。

2、添加多语言:

新建工程(TestLocalization-master)—> TestLocalization-master—>project—>info—>Localizations,点击加号添加需要的语言。

3.创建语言资源文件cmd+N(新建)—>Resource—> Strings File —>Next—>命名为Localizable.strings —> creates —>Finish

添加属性:点击Localizable.strings—>右侧Localization —> Localize—>选择语言—>Localize

—>取消Base,勾选English, Chinses(Simplified):

4.添加属性Localizable.strings:修改标签显示语言

例如:在荷兰文件下,sign in写对应的荷兰语,在中文下,sign in 写对应的中文。

UILabel *label = [[UILabel alloc]init];

label.frame = CGRectMake(100, 100, 80, 40);

label.text = NSLocalizedString(@"Sign In",@"");

[self.view addSubview:label];

5.获取所有语言和当前语言:

    //获得当前设备的语言

    // 取得用户默认信息

    NSUserDefaults *defaults = [ NSUserDefaults standardUserDefaults ];

    // 取得 iPhone 支持的所有语言设置

    NSArray *languages = [defaults objectForKey : @"AppleLanguages" ];

    NSLog (@"%@", languages);

    // 获得当前iPhone使用的语言

    NSString* currentLanguage = [languages objectAtIndex:0];

    NSLog(@"currentLanguage:%@",currentLanguage);

原文链接:  http://v2it.win/?p=519

猜你喜欢

转载自blog.csdn.net/huanghaiyan_123/article/details/52415087