Android 如何从数组中生成变量
我使用了一个如下的数组,然后使用“category”变量,没有问题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
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()
。您可以使用与获取资源相同的上下文。这同样有效,再次感谢!