我是Java的新手,正在使用它构建一个Android应用程序,我希望能够确定打开了多少个开关,但不确定如何汇总开关数组的最佳方法。我目前有:
SS = new Switch[8];
SS[0] = getView().findViewById(R.id.switch1);
SS[1] = getView().findViewById(R.id.switch2);
SS[2] = getView().findViewById(R.id.switch3);
SS[3] = getView().findViewById(R.id.switch4);
SS[4] = getView().findViewById(R.id.switch5);
SS[5] = getView().findViewById(R.id.switch6);
SS[6] = getView().findViewById(R.id.switch7);
SS[7] = getView().findViewById(R.id.switch8);
submit = getView().findViewById(R.id.submitButton);
submit.setOnClickListener(new View.OnClickListener(){
public void onClick (View v) {
totalactive= IntStream.of(SS).sum();
,将数组“ SS”声明为全局类。
谢谢
答案 0 :(得分:0)
在onClick
内使用for each
循环:
totalactive = 0;
for (Switch s : SS) {
if (s.isChecked()) totalactive++;
}
答案 1 :(得分:0)
到目前为止,所有答案都很棒!但是,然后,您也可以按照传统的方式进行操作:
int totalactive = 0;
for(int i = 0; i < SS.length; i++){
if(SS[i].isChecked()){
totalactive++;
}
}
//Here's your result:
Log.d("sumTotal", Integer.toString(totalactive));
我敢打赌,这很容易理解和联系。我希望这有帮助。快活的编码!