2012-02-23 8 views
28

Мне нужно установить флажковые значения при нажатии кнопки. Java код:Android: Get check checkbox values ​​

dualcamera1 = (CheckBox)findViewById(R.id.Camera1_DualDisplay); 
dualcamera2 = (CheckBox)findViewById(R.id.Camera2_DualDisplay); 
dualcamera3 = (CheckBox)findViewById(R.id.Camera3_DualDisplay); 
dualcamera4 = (CheckBox)findViewById(R.id.Camera4_DualDisplay); 
dualdisplay = (Button)dialog.findViewById(R.id.DisplayDualVideo); 
+0

Вы хотите получить значения флажка? Вы имеете в виду, вы хотите знать статус флажка или что-то еще? пожалуйста, объясните свой бит требования больше. – Hiral

+0

Мне нужно выбрать только два флажка, если пользователь выбирает одиночные, более чем mutiple checkboxes, для отображения сообщения. После нажатия кнопки мне нужно знать установленные флажки. – Kamal

+0

Все еще неясно. Вы хотите запретить пользователю выбирать больше/меньше 2 флажков? а также, что вы подразумеваете под значением checkbox? его проверенным состоянием или его текстом? – Hiral

ответ

6

Правильный вариант, чтобы получить значение Checkbox использует метод:

IsChecked() ток проверяется стат е мнение

dualcamera1.isChecked() 

isEnable() просто возвращает Истина, если это представление включено, ложь в противном случае.

26

Вы можете позвонить isChecked() на поле, чтобы получить статус. Если вы хотите подсчитать количество отмеченных флажков, вы можете сохранить их в ArrayList и пройти через это.

+0

Правильно ❤️ – mghhgm

39

Его простой:

static int m=0; 
dualDisplay.setOnClickListener(new OnCli....{ 
    onClick() 
    { 
      if(dualcamera1.isChecked()) 
       m++; // you can save this as checked somewhere 
      if(dualcamera2.isChecked()) 
       m++; // you can save this as checked somewhere 
      if(dualcamera3.isChecked()) 
       m++; // you can save this as checked somewhere 
      if(dualcamera4.isChecked()) 
       m++; // you can save this as checked somewhere 
    } 
}); 
if(m>2 || m<2) 
     // show error message 
else 
     // code here 

вы можете сохранить детали CheckBox, если его выбор, если он установлен, в течение цикла только.

7

Это может помочь вам:

//Returns the enabled status for this view. 
dualcamera1.isEnabled() //return True if this view is enabled, false otherwise. 

//Indicates whether the view is currently in pressed state. 
dualcamera1.isPressed() //return True if this view is enabled, false otherwise. 
17

Если CheckBox не определяют в OnCreate() метод, то придется использовать что-то вроде этого:

boolean isChecked = ((CheckBox) findViewById(R.id.checkBox1)).isChecked()