gpt4 book ai didi

android - 如何将参数转换为对象名称

转载 作者:行者123 更新时间:2023-11-29 20:32:25 24 4
gpt4 key购买 nike

此代码帮助我通过单击具有与数组名称相同的标签名称的按钮来加载数组。我知道这种方法很让人头疼,因为有超过 100 个按钮,

 private void altBasamakGetir(String kazanimNO)
{
Resources res=this.getResources();
infoTxt.setText(kazanimNO);
switch (kazanimNO)
{
case "kazanim_0":
{
String altBasamaklar[]= res.getStringArray(R.array.kazanim_0);
}
;break;
case "kazanim_1":
{
String altBasamaklar[]= res.getStringArray(R.array.kazanim_1);
}
;break;
case "kazanim_2":
{
String altBasamaklar[]= res.getStringArray(R.array.kazanim_2);
}
;break;
case "kazanim_3":
{
String altBasamaklar[]= res.getStringArray(R.array.kazanim_2);
}
;break;
}

}
我想要这样的东西:paramater to array name

 String  altBasamaklar[]= res.getStringArray(R.array.kazanimNo);

将参数 kazanimNO 加入数组的简单方法

我不知道如何搜索这个问题,所以我在这里问。

感谢您提供任何信息。

最佳答案

您可能正在寻找的东西可以通过 Reflection 实现.但是,我将给出一个示例,以比 switch 更简洁的方式在代码中执行此操作。

我建议使用 Java Map界面。例如HashMap .在某个地方你仍然需要初始化这些值。 Map 将使用 String 键和 String[] 值。创建一个 void 函数来初始化它。

public void initMap(HashMap<String, String[]> map)
{
map.put("kazanim_0", Resources.getStringArray(R.array.kazanim_0));
map.put("kazanim_1", Resources.getStringArray(R.array.kazanim_1));
....
}

然后你可以用

获取值
String[] myArray = map.get("kazanim_0);

关于android - 如何将参数转换为对象名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31771048/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com