如何根据地区本地化项目?

时间:2015-10-13 06:23:39

标签: ios nslocalizedstring nslocale

我有一些功能和字符串取决于应用程序的区域。那个地区也说英语。根据我的知识,NSLocalization仅取决于用户选择的语言。我想根据区域更改字符串。怎么实现呢?可用的解决方案不适用于iOS8 +。

先谢谢

2 个答案:

答案 0 :(得分:0)

我使用了以下参考资料,我的代码使用西班牙语和英语。

我已经设置了这两种语言,我发现这是有效的。

tutorial link

我知道你尝试了,但是你的代码存在一些问题,因为我已经使用过,而且它的工作非常完美。

希望这会对你有所帮助。 谢谢。

答案 1 :(得分:0)

您需要围绕它构建自定义逻辑。我就是这样做的:

第1步:将所有本地化保留在服务器上的plist中。只是为了使数据动态化。每种语言都有文件和文件。区域。像myLocalization_en_CA.plist& myLocalization_en_FR.plist。通常,这可以在DB中完成,易于维护。

第2步:在应用启动时,从服务器加载此本地化plist并将其保存在本地。可能在Documents目录中。这里的关键是,根据您的设备区域,您需要下载所有使用该语言的本地化文件。此步骤可以简化,如果在启动时,您可以知道该区域中使用的确切语言。例如,在加拿大,使用英语和法语,因此如果在发布时你可以推断语言,比如说法语,那么只能获取myLocalization_en_FR.plist

步骤3:编写实用程序方法并传递当前标签/字符串的键以显示在屏幕上。此方法还应采用fr_CA等参数覆盖区域设置和区域,然后通过将myLocalization_与传递的字符串合并来获取文件。

第4步:在上面的实用工具方法中选择了正确的文件后,只需获取传递的密钥的值。