是否可以将一个本地化值文件夹中的strings.xml用于另一种类似语言?

时间:2018-09-30 17:21:02

标签: android localization

我一直在互联网上寻找此内容,但是没有找到任何文章/博客(可能我一直看得很差),所以我决定在这里提一个问题:是否可以使用相同的strings.xml (翻译)从一种语言文件夹转换为另一种语言,这非常相似?具体来说,我想将values-sk的翻译也用于values-cz语言。

我当时正在考虑编写Gradle脚本,该脚本将在strings.xml文件夹中复制values-sk文件并将其复制到构建版本的values-cz文件夹中,但是我想知道如果有更简单/开箱即用的解决方案。

2 个答案:

答案 0 :(得分:0)

在项目的values-sk目录中同时创建values-cz/res文件夹,然后将strings.xml复制粘贴到每个文件夹。如您所见,这些将是不同的目录 ,但是具有相同的strings.xml ,因此,它应该可以工作。

然后,Android将检测到您针对两个不同的本地化使用了两个不同的目录字符串,然后,您可以更改,修改其中的每个(如果需要)。

答案 1 :(得分:0)

好吧,我在构建之前使用Gradle脚本解决了它。如果有人感兴趣,我在app.gradle中添加了新任务(在文件末尾,但这没关系):

gradle.projectsEvaluated {
    preBuild.dependsOn(copySkStringsFileToCsFolder)
}

task copySkStringsFileToCsFolder(type: Copy) {
    description = 'Copies strings.xml from values-sk to values-cs'
    from 'src/main/res/values-sk/strings.xml'
    into 'src/main/res/values-cs'
}

从我的角度看,它会在每个“同步/构建”操作中复制文件-对我来说很巧妙,但是我仍然对其他可能性(如果有的话)感兴趣。 我也想向捷克人道歉,我误解了值文件夹的代码(使用-cz而不是-cs)-抱歉,我不知道我应该使用另一个一。 :)