Android资源命名空间

时间:2013-11-06 16:24:51

标签: java android xml layout namespaces

我最近开始编写一个Android应用程序,目前我遇到了一个问题。

我项目中的资源都在同一名称空间中。我用于 strings.xml 中的元素的名称,例如,我不能再使用 my_strings.xml

我原本希望通过@strings/myString访问 strings.xml 中的字符串,并通过@my_strings/myString访问 my_strings.xml 中的字符串。

有没有办法达到我想要的目标?

1 个答案:

答案 0 :(得分:2)

是的,有办法!但这取决于你打算做出什么改变。 Android拥有全面的资源管理逻辑。因此,如果values/strings中的字符串是英语,但您也想提供德语字符串,只需创建另一个values-de文件夹并将德语字符串与相同的标识符放在里面。根据系统语言,Android会选择正确的语言。

要了解可能的内容概览here

它告诉你所有可能的值组合 - 后缀。如果您无法使用该机制存档所需内容,则只能为字符串的标识符添加前缀。 I.E. my_string_keystring_key

最后一个注意:放置值的文件名与系统无关。只要文件位于foobar.xml文件夹中,您就可以在一个名为value-XXX的文件中混合使用字符串,颜色,尺寸,数组和样式!