阿里云首页 移动开发平台 mPaaS

iOS 语言设置

在接入 iOS 过程中,您可对 iOS 应用进行语言设置。

默认跟随系统语言

  1. 您可在工程中添加 Languages.bundle.zip 来设置当前 App 支持的语言。
  2. 在应用启动完成时,初始化多语言框架:
    1. //#import <mPaas/APLanguage.h>
    2. [APLanguageSetting sharedSetting];

获取 App 当前语言

您可通过以下方式获取 App 当前语言:

  1. NSString *currentLanguage = [APLanguageSetting currentLanguage].name;

修改 App 当前语言

在工程的 Languages.bundle 中,您可查看当前 App 支持的语言:

Languages.bundle

您可通过以下方式修改 App 当前语言:

  1. [APLanguageSetting setCurrentLanguageWithName:@"en"];

文案支持多语言

  1. 添加多语言 bundle 文件。
    1. 根据当前 App 支持的语言,添加对应的 strings 文件。
      strings
    2. 设置多语言文件的路径:
      1. [[APLanguageBundleLoader sharedLoader] setCustomLanguagesBundlePath:@""];
  2. 实现 strings 文件。
    strings 文件的实现原则如下:
    • strings 文件中每一个文案格式如下,等号左侧标识文案的 key,等号右侧字符串标识文案在此语言下的展示内容:
      format
    • 对于同一文案,在所有 strings 文件中的 key 必须一致。key 的定义,建议以 bundle 名与文案中文内容拼接而成,如 “BeeCityPicker:城市选择”。
      define
  3. 设置文案。
    对需要支持多语言的文案,请勿写死,可使用 __Text 宏进行复制,如下所示:
    1. self.navigationItem.title = __TEXT(@"BeeCityPicker",@"BeeCityPicker:城市选择", @"城市选择");
    • @"BeeCityPicker":为文本在字符串表所在 \c bundle 名,通常为模块资源 bundle 名称。
    • @"BeeCityPicker:城市选择":为文本在字符串表中的 key。
    • @"城市选择":为当在对应字符串表中找不到 key 对应的文本内容时,默认返回的内容。