• ios软件支持双语(本地化、国际化)


    获取ios系统语言的方法:   

        NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults];

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

        NSString* systemlanguage = [languagesArray objectAtIndex:0];

    最后获得的systemlanguage即是当前系统的语言。( en:英文  zh-Hans:简体中文   zh-Hant:繁体中文)

     languagesArray 为设置-通用-多语言里面的语言数组,顺序一致,所以index=0即是当前语言。

    不过如果工程中许多地方需要适配多种语言,这个方法就不适合了。

    ios中有专门的属性支持本地化:Localizable.strings

    首先的工程中添加文件:Strings File (在ios-Resource里),将其名字改为Localizable.strings。

    选中Localizable.strings,打开Utilities,选中show the File inspector 在Localization中添加你需要支持的语言(比如English和Chinese),这是你会发现Localizable.strings就包含了2个文件(English和Chinese)。

    准备工作做完了,然后在需要设置双语的地方(比如要设置“Title”和“标题”)使用NSLocalizedString(@"Title", nil)。

    NSLocalizedString 第一个参数是key, 第二个参数是注释(个人觉得没什么用,所以一般设为nil...谁知道有啥特别的用处可以告诉我下。)。

    在Localizable.strings(English)中添加 “Tltle” = “Title”。

    在Localizable.strings(Chinese)中添加 “Tltle” = “标题”。

    其他地方类似设置~

  • 相关阅读:
    linux一些常用命令
    imageMagick
    nginx安装配置
    数据库操作(六)、Date函数
    数据库操作(五)、聚合函数,分组
    JQuery(一)
    数据库小结(二)
    数据库操作(四)、标量函数
    数据库操作(三)
    C#基础(六)
  • 原文地址:https://www.cnblogs.com/nanoCramer/p/2829135.html
Copyright © 2020-2023  润新知