AndroidでのCheckBoxチェックボックス操作
public class MainActivity extends Activity {
//
private CheckBox cbx1, cbx2, cbx3, cbx4;
private List checkBoxs = new ArrayList();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
cbx1 = (CheckBox) findViewById(R.id.checkBox1);
cbx2 = (CheckBox) findViewById(R.id.checkBox2);
cbx3 = (CheckBox) findViewById(R.id.checkBox3);
cbx4 = (CheckBox) findViewById(R.id.checkBox4);
//
cbx1.setChecked(true);
cbx3.setChecked(true);
cbx1.setOnCheckedChangeListener(listener);
cbx2.setOnCheckedChangeListener(listener);
cbx3.setOnCheckedChangeListener(listener);
cbx4.setOnCheckedChangeListener(listener);
//
checkBoxs.add(cbx1);
checkBoxs.add(cbx2);
checkBoxs.add(cbx3);
checkBoxs.add(cbx4);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
public void getValues(View v) {
String content = "";
for (CheckBox cbx : checkBoxs) {
if (cbx.isChecked()) {
content += cbx.getText() + "
";
}
}
if ("".equals(content)) {
content = " ";
}
new AlertDialog.Builder(this).setMessage(content).setTitle(" ")
.setPositiveButton(" ", null).show();
}
CompoundButton.OnCheckedChangeListener listener = new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
CheckBox box = (CheckBox) buttonView;
Toast.makeText(getApplicationContext(),
" :" + isChecked + "xxxxx" + box.getText(),
Toast.LENGTH_LONG).show();
}
};
}
LayoutコンテナでCheckBoxを使用する場合は、CheckBoxを設定する場所を記録します.
public String recordCheckBoxChecked() {
String checked = "";
int index = 1;
for (CheckBox cbx : checkBoxs) {
if (cbx.isChecked()) {
checked = checked + index + ",";
}
index++;
}
return checked;
}