如何使用for循环和数组创建多个对象

时间:2015-11-27 13:56:12

标签: java android

我是Android的新手,并创建了一个拥有30个共享相同内容的微调器的应用。如何在循环内创建这些对象而不写入30行?

Spinner spinner_grade_1 = (Spinner) findViewById(R.id.spinner_grade_1);
Spinner spinner_grade_2 = (Spinner) findViewById(R.id.spinner_grade_2);
......
Spinner spinner_grade_30 = (Spinner) findViewById(R.id.spinner_grade_20);

而不是我如何在循环中创建这些对象? (我创建了以下字符串数组)

gradeBoxNames = new String[]{"spinner_grade_1", "spinner_grade_2",..... };

2 个答案:

答案 0 :(得分:2)

1)初始化资源ID数组

 int[] ids = {R.id.spinner_grade_1,R.id.spinner_grade_2};
        Spinner[] spinners = new Spinner[ids.length];


    for(int i=0 ;i< ids.length;i++) {
               spinners[i] = (Spinner) findViewById(ids[i]);
            }

答案 1 :(得分:1)

使用Butterknife库:

@Bind({ R.id.first_name, R.id.middle_name, R.id.last_name })
List<EditText> nameViews;