Android XML中的数组:将一个数组作为一部分插入另一个数组

Android XML中的数组:将一个数组作为一部分插入另一个数组,android,arrays,xml,Android,Arrays,Xml,为我的Android应用程序准备字符串资源时,我遇到了这样一个问题。我需要两个包含12和13项的字符串数组,前11项对于这两个数组都是通用的。最好创建一个包含11个公共项的数组,然后创建两个需要的数组,其中包含来自“公共”数组的11个项以及1和2个附加项。然而,我找不到一个方法来做这件事。可以引用一些xml资源,但在我的例子中,有必要分别包含11个公共项 提前感谢您在XML中提出的任何想法,您可以将公共数组作为项引用: 名字1 名称2 名字3 @数组/公共_数组 名字4 然后在java代码中

为我的Android应用程序准备字符串资源时,我遇到了这样一个问题。我需要两个包含12和13项的字符串数组,前11项对于这两个数组都是通用的。最好创建一个包含11个公共项的数组,然后创建两个需要的数组,其中包含来自“公共”数组的11个项以及1和2个附加项。然而,我找不到一个方法来做这件事。可以引用一些xml资源,但在我的例子中,有必要分别包含11个公共项


提前感谢您在XML中提出的任何想法,您可以将公共数组作为项引用:


名字1
名称2
名字3
@数组/公共_数组
名字4
然后在java代码中,添加以下函数,将资源项转换为字符串列表:

列出getArrayItems(int resourceId,Resources){
ArrayList itemList=新建ArrayList();
TypedArray TypedArray=resources.obtainTypedArray(resourceId);
对于(int i=0;i
最后,您可以使用该函数获取
新数组中的项目列表:

List arrayItems=getArrayItems(R.array.new_数组,getApplicationContext().getResources());
Log.d(“MyAdapter”,“onCreate:+arrayItems.toString());//应该打印MyAct:onCreate:[名称1、名称2、名称3、名称4]
注意,在我的示例中,我只考虑了字符串数组。只需稍作改动,就可以使函数适应不同的阵列


我希望我的回答能有所帮助。

您使用kotlin还是java?另外,您想从哪里获得最终数组项的引用?Natig Babayev,谢谢您的回复。使用Java。我需要在创建XML时引用XML中的其他数组。Id est,这里是xml
字符串数组
,共有11项,它是另外两个
字符串数组
的基础。您将如何处理另一个字符串数组?您打算从Java代码还是其他地方使用它?Natig Babayev,谢谢您的帮助。这是android应用程序。另外两个数组包括基本数组中的11项,它们是java代码中的
ArrayAdapter
的源代码。Natig Babayev,感谢您的回复。当然,我尝试插入公共数组的项,但没有成功。当公共数组作为元素包含时,列表(实际上是微调器)似乎无效,因为应用程序在启动时停止。你的方法很好,但我要走另一条路。11个常用项保存在单独的文件
strings common.xml
中(这是可能的,并且必须针对我的3个地区进行),然后这些项被引用11次。有些操作很复杂,但主要目的是实现的:如果需要更改一个公共项,则只能在
字符串common.xml
中进行。