Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.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
Android 如何从数组中生成变量_Android_Kotlin - Fatal编程技术网

Android 如何从数组中生成变量

Android 如何从数组中生成变量,android,kotlin,Android,Kotlin,我使用了一个如下的数组,然后使用“category”变量,没有问题 var category = resources.getStringArray(R.array.**main_menu**) 我的问题是,如何创建变量“主菜单”? 还有其他数组也存在,我想将它们的名称作为变量发送到此行 我尝试了下面的代码,但肯定不起作用,因为它的文本和“getStringArray”需要Int var **text** = R.array.main_menu var mainCategory = resour

我使用了一个如下的数组,然后使用“category”变量,没有问题

var category = resources.getStringArray(R.array.**main_menu**)
我的问题是,如何创建变量“主菜单”? 还有其他数组也存在,我想将它们的名称作为变量发送到此行

我尝试了下面的代码,但肯定不起作用,因为它的文本和“getStringArray”需要Int

var **text** = R.array.main_menu
var mainCategory = resources.getStringArray(**text**)
通过使用方法,您可以获得资源的整数id。该方法接受三个参数:

  • 资源的名称为字符串

  • 资源的类型,在您的案例中是“数组”

  • 包名

通过使用从
resources.getIdentifier(arrayName,“array”,getPackageName())
返回的资源id,可以获取数组

以下是完整代码:

var arrayName = "main_menu"
val resId = resources.getIdentifier(arrayName, "array", context.packageName)
var mainCategory = resources.getStringArray(resId)
通过使用方法,您可以获得资源的整数id。该方法接受三个参数:

  • 资源的名称为字符串

  • 资源的类型,在您的案例中是“数组”

  • 包名

通过使用从
resources.getIdentifier(arrayName,“array”,getPackageName())
返回的资源id,可以获取数组

以下是完整代码:

var arrayName = "main_menu"
val resId = resources.getIdentifier(arrayName, "array", context.packageName)
var mainCategory = resources.getStringArray(resId)

所以,你们想通过它的名字得到字符串数组吗?是的,还有10个其他数组存在,所以我想把这些数组发送到这一行。好的,根据我的理解,我给出了答案。您可以签出。您可以尝试
context.getPackageName()
。您可以使用与获取
资源相同的上下文。这同样有效,再次感谢!所以,你们想通过它的名字得到字符串数组吗?是的,还有10个其他数组存在,所以我想把这些数组发送到这一行。好的,根据我的理解,我给出了答案。您可以签出。您可以尝试
context.getPackageName()
。您可以使用与获取
资源相同的上下文。这同样有效,再次感谢!