es和es-419在iOS本地化中有什么区别?

时间:2019-07-08 17:48:31

标签: ios xcode localization localizable.strings

我一直在尝试为拉丁美洲提供西班牙语支持,但我不支持西班牙的西班牙语版本。如何分开这两个?我认为,es用于西班牙型号,es-419用于拉丁美洲型号。所以我添加了es-419,但是我的本地化字符串也出现在es变体中。

3 个答案:

答案 0 :(得分:0)

我不了解iOS本地化,但我认为我可以帮助您解决问题

您会看到,单独的代码es仅指西班牙语,它没有指定任何变体。 西班牙西班牙语变种的代码为es-es, 第二个“ es”表示西班牙

因此,也许您可​​以查看es-es变体的本地化字符串是否出现?如果没有,那么也许问题就解决了:)

答案 1 :(得分:0)

我无法重现任何问题。

这是我测试的方式。我将我的应用本地化为英语(基础)和西班牙语(拉丁美洲),又名 "es-419"。我有一个 Localizable.strings 文件,它存在于两种本地化中。

所以:

  • 如果我在英语下运行,我会得到我的英语字符串

  • 如果我在西班牙语(拉丁美洲)下运行,我会得到我的西班牙语字符串

  • 如果我在西班牙语下运行,我会得到我的英语字符串 - 这就是我所期望的,因为我没有针对该方言进行本地化

所以在我看来这按预期工作。我没有重现 OP 描述的任何问题。

答案 2 :(得分:-1)

根据https://en.wikipedia.org/wiki/Language_code

es – Spanish, as shortest ISO 639 code.
es-419 – Spanish appropriate for the Latin America and Caribbean region, using the UN M.49 region code