iOS 是否依赖于另一个区域本地化字符串?

Does iOS fall back on another regional localized string?

一个 iOS 应用有一个 Localizable.strings 语言文件 es-MX(西班牙-墨西哥),但没有该语言的通用本地化文件,例如es(西班牙语)。

使用设备区域设置 es-PE(西班牙语-秘鲁)的用户会看到 es-MX 翻译还是会退回到基本语言 en

我用 iOS 10.3 在模拟器上试了一下,结果是:

如果 es-MX 翻译存在,但没有 es 翻译,那么 Localizeable.strings 对于区域设置 es-PE 的用户,将回退到基本语言,在我的案例 en.

如果有人对文档有参考,请发表评论,我会将其添加到答案中。因为如果当前未定义行为,它可能会在未来的 iOS 版本中发生变化,甚至可能取决于语言和地区。对于其他地区,有些地区符合 "parent",例如es-419(西班牙拉丁美洲)对应 es-MX(西班牙-墨西哥),因此如何定义回退行为会很有趣。

然而,由于 es-419 是一种可以在 iOS 设置中选择的独特语言,我假设后备层次结构是:

base
↑
|- es
   ↑
   |- es-MX
   |- es-PE
   |- es-419
   |- es-ES