0

我们正在将我们的应用程序从 iOS6 迁移到 iOS7,并且我们使用编程方式创建视图(而不是从故事板或 nibs)。

我们正在努力支持使用不同语言的多个国家/地区。例子,

  • 英语 - 中国、印度、美国
  • 简体中文 - 中国台湾

可以从基本语言本地化集中对特定国家/地区进行自定义覆盖。现在我需要为语言包和特定国家/地区的包建立一个共同的基础。

公共语言包:(基础语言包)

  • en.lproj
  • zh_hans.lproj

特定国家/地区的覆盖捆绑包:(如果我有每个特定国家/地区的自定义文本)

  • ch(ina)_en.lproj
  • ch(ina)_hans.lproj
  • us_en.lproj

问题:

  1. 每个国家(中文、台湾)的资源文件(翻译)必须用英文、中文复制。我们怎样才能避免这种情况?有时图像也会重复,这是一个维护问题,如果我们开始支持 10 多个国家/地区。
  2. Android 支持每个国家/地区的每种语言翻译的 delta 覆盖,我们在 iOS 中是否有类似的东西?

我知道 iOS 不支持开箱即用。在不重复资源的情况下实现相同目标的正确方法是什么?任何提示或想法来实现相同的目标?

谢谢,亚历克斯

4

1 回答 1

0

我希望我理解正确。

1a.如果图像文件包含需要翻译的文本或“图像”,则只需要按语言复制图像文件,否则应该只有一个版本。从内存中,您可以选择要翻译的图像文件。

2a.您想要支持的每种语言都需要翻译 - 没有办法解决这个问题(显然)。这些通常存在于您发送翻译的“字符串”文件中。

2b.如果您不为字符串提供特定翻译,则默认为“基本”翻译。不幸的是,我不知道这将如何与两个“基础”翻译一起使用,或者即使这是可能的,因为通常基础翻译是您开发的语言。您需要进一步调查。

2c.您将需要自己管理字符串文件的增量 - 也许通过 GIT?尽管可能有第三方产品可以做到这一点,但这很烦人但可行。

于 2014-04-09T13:05:39.220 回答