Android:获取选中的复选框值

Kam*_*mal 38 android

单击按钮时,我需要检查复选框值.Java代码:

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);
Run Code Online (Sandbox Code Playgroud)

Hir*_*ral 54

这很简单:

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
Run Code Online (Sandbox Code Playgroud)

您可以保存复选框的详细信息(如果已选中),如果选中,则仅保留for循环.


Jon*_*Jon 30

您可以调用isChecked()复选框来获取其状态.如果要计算已检查的复选框的数量,则可以将其存储在ArrayList中并循环显示.


Jen*_*ter 23

如果没有在onCreate()方法中定义CheckBox,则必须使用以下内容:

boolean isChecked = ((CheckBox) findViewById(R.id.checkBox1)).isChecked()
Run Code Online (Sandbox Code Playgroud)


Jor*_*sys 11

获取Checkbox值的正确选项是使用以下方法:

isChecked()当前检查的视图状态

dualcamera1.isChecked() 
Run Code Online (Sandbox Code Playgroud)

isEnable() 如果启用此视图,则返回True,否则返回false.


小智 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. 
Run Code Online (Sandbox Code Playgroud)