【问题标题】:iOS Stringsdict fallbackiOS Stringsdict 后备
【发布时间】:2017-01-12 07:43:43
【问题描述】:

我在 iOS 应用程序中使用 stringsdict 功能进行本地化。该应用程序是英文的,并已本地化为法文。因此,我有一个英语版本作为基础,一个法语版本作为翻译。

如果作为用户,我将语言设置为其他语言,例如西班牙语,则应用程序正确使用基本本地化(英语)。但是,假设我的基本字符串字典中有一个项目在法语中不存在。在这里,字符串将作为键出现(即不从字符串字典文件中查找)。有没有办法逐个键回退到基本字符串字典?与仅当该语言环境字符串字典不存在时相反。

【问题讨论】:

    标签: ios xcode localization


    【解决方案1】:

    您可以包装 NSLocalizedString 并将值与键进行比较。如果这是关键,您可以从 bundle 中的 fallback.strings 文件中获取翻译。

    - (NSString *)localizedStringForKey:(NSString *)key value:(nullable NSString *)value table:(nullable NSString *)tableName NS_FORMAT_ARGUMENT(1);
    

    另一种选择是从您的翻译文件的英文文件的副本开始,然后逐个替换它们。

    这些都不理想。但是换行选项可以更好地扩展,并且将来会帮助您处理方言。

    【讨论】:

      猜你喜欢
      • 2020-08-07
      • 1970-01-01
      • 2023-03-06
      • 1970-01-01
      • 1970-01-01
      • 2015-01-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多