我想知道是否有人在res / values目录中遇到了验证字符串数组的好方法。
我使用默认语言环境通过代码创建,并且可能具有类似
的资源<string-array name="array_example1">
<item>One</item>
<item>Two</item>
<item>Three</item>
</string-array>
然后,当应用程序的翻译人员进行翻译时,他们也会创建一个字符串数组。有时,如果一个翻译落后于另一个资源文件可能没有数组中的条目(可能只有上述示例中的“一个”和“两个”)
有没有简单的方法来验证条目数是否不匹配?不匹配可能会导致代码出现问题,但由于应用程序有多种语言的10个字符串数组,因此检查它们是否相符非常耗时。
其他人对此有何看法?
答案 0 :(得分:49)
我找到了一种更好的方法来阻止崩溃。我没有意识到字符串数组可以通过以下方式引用字符串资源:
<string-array name="array_example1">
<item>@string/resOne</item>
<item>@string/resTwo</item>
<item>@string/resThree</item>
</string-array>
然后添加
<string name="resOne">One</string>
<string name="resTwo">Two</string>
<string name="resThree">Three</string>
因此,如果存在不匹配,则会显示该选项的默认语言,并因不同大小的列表而停止崩溃