iOS开发-APP语言国际化

来源:互联网 发布:美柚智能卫生巾 知乎 编辑:程序博客网 时间:2024/06/05 04:44

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://huanghaiyan.96.lt/ios/ios开发-app语言国际化


 
0 0
原创粉丝点击