Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/219.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android资源命名空间_Java_Android_Xml_Layout_Namespaces - Fatal编程技术网

Java Android资源命名空间

Java Android资源命名空间,java,android,xml,layout,namespaces,Java,Android,Xml,Layout,Namespaces,我最近开始编写一个Android应用程序,现在有一个问题困扰着我 我在项目中拥有的资源都在同一名称空间中。我在strings.xml中使用的元素名称,例如,我不能在saymy_strings.xml中再次使用 我原本希望通过@strings/myString访问strings.xml中的字符串,并通过@myu strings/myString访问myu strings.xml中的字符串 有什么办法可以达到我想要的吗?是的,有办法!但这取决于你打算改变什么。安卓拥有成熟的资源管理逻辑。因此,如果说

我最近开始编写一个Android应用程序,现在有一个问题困扰着我

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

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


有什么办法可以达到我想要的吗?

是的,有办法!但这取决于你打算改变什么。安卓拥有成熟的资源管理逻辑。因此,如果说
values/Strings
中的字符串是英文的,但您也希望提供德语字符串,只需创建另一个
values de
文件夹,并将具有相同标识符的德语字符串放入其中。根据系统语言的不同,Android会选择正确的

要了解可能发生的情况,请查看

它告诉您所有可能的值组合后缀。如果无法使用该机制归档所需内容,则只能为字符串的标识符添加前缀。即
my_string_key
string_key


最后一点注意:您在其中输入值的文件名与系统完全无关。只要文件位于
value XXX
文件夹中,您就可以在一个名为
foobar.xml
的文件中混合字符串、颜色、尺寸、数组和样式

非常感谢您的详细回答。这帮了大忙。我现在明白了资源管理的可能性和局限性。