Java 是否可以将小部件存储在列表/数组中?

Java 是否可以将小部件存储在列表/数组中?,java,android,arrays,list,Java,Android,Arrays,List,所有-我有很多微调器,我想存储在一个列表/数组中,这样我就不必重写很多代码。我有大约30个微调器,它们都经过相同的代码。我试图找出一种方法,将30个微调器放入数组列表中,然后通过代码运行数组/列表。例如: Spinner spinner1 = (Spinner) findViewById(R.id.spinner); Spinner spinner2 = (Spinner) findViewById(R.id.spinner2); List<String> listOfSpinner

所有-我有很多微调器,我想存储在一个列表/数组中,这样我就不必重写很多代码。我有大约30个微调器,它们都经过相同的代码。我试图找出一种方法,将30个微调器放入数组列表中,然后通过代码运行数组/列表。例如:

Spinner spinner1 = (Spinner) findViewById(R.id.spinner);
Spinner spinner2 = (Spinner) findViewById(R.id.spinner2);
List<String> listOfSpinners= new ArrayList(); // This is the part I am not sure about                       
    listOfSpinners.add(spinner1);
    listOfSpinners.add(spinner2); 


    ArrayAdapter<String> adapterSpinner = new ArrayAdapter<String>(this,
                R.layout.spinnerlayout, infoInSpinner);


    adapterSpinner.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);  
    listOfSpinners.setAdapter(adapterSpinner); //I want to use the list here (listOfSpinners)
Spinner Spinner 1=(Spinner)findViewById(R.id.Spinner);
喷丝器喷丝器2=(喷丝器)findViewById(R.id.spinner2);
List ListofSpinner=new ArrayList();//这是我不确定的部分
添加(喷丝头1);
添加(喷丝头2);
ArrayAdapter adapterSpinner=新的ArrayAdapter(此,
R.layout.喷丝头布局,infoInSpinner);
adapterSpinner.setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
setAdapter(adapterSpinner)//我想在这里使用列表(ListofSpinner)

我甚至不知道这是否可能,但我想我会问,否则这将是一个漫长的夜晚,编写重复的代码:)。谢谢你的时间

将ID存储在一个数组中,如
int
s。然后循环通过它们来设置适配器

ArrayList<Integer> listOfSpinners = new ArrayList<Integer>();
listOfSpinners.add(R.id.spinner);
listOfSpinners.add(R.id.spinner2); 

ArrayAdapter<String> adapterSpinner = new ArrayAdapter<String>(this,
            R.layout.spinnerlayout, infoInSpinner);

adapterSpinner.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
for (Integer spinner : listOfSpinners) {
    // If you want multiple adapters, move the adapter code in here and alter it accordingly.
    ((Spinner) findViewById(spinner)).setAdapter(adapterSpinner);
}
arraylistlistofspinners=newarraylist();
添加(R.id.spinner);
添加(R.id.spinner2);
ArrayAdapter adapterSpinner=新的ArrayAdapter(此,
R.layout.喷丝头布局,infoInSpinner);
adapterSpinner.setDropDownViewResource(android.R.layout.simple\u微调器\u下拉菜单\u项);
对于(整数微调器:ListofSpinner){
//如果需要多个适配器,请将适配器代码移到此处,并相应地进行修改。
((微调器)findViewById(微调器)).setAdapter(适配器微调器);
}

我还没有测试过这段代码,但它应该可以正常工作!请记住,这会将所有
微调器设置为具有相同的适配器。

我会尝试,请稍候。奇怪,我得到了第一个微调器,但没有任何后续功能,有什么想法吗?同时,我会再试一次。没关系。我明白了,非常感谢你的帮助!把我从沉闷的任务中解救出来!很高兴您得到了它--我需要编辑上面代码中的任何内容来反映更改吗?
ArrayList<Integer> listOfSpinners = new ArrayList<Integer>();
listOfSpinners.add(R.id.spinner);
listOfSpinners.add(R.id.spinner2); 

ArrayAdapter<String> adapterSpinner = new ArrayAdapter<String>(this,
            R.layout.spinnerlayout, infoInSpinner);

adapterSpinner.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
for (Integer spinner : listOfSpinners) {
    // If you want multiple adapters, move the adapter code in here and alter it accordingly.
    ((Spinner) findViewById(spinner)).setAdapter(adapterSpinner);
}