Android中CheckBox複選框操作
阿新 • • 發佈:2019-01-27
public class MainActivity extends Activity { // 宣告多選列表物件 private CheckBox cbx1, cbx2, cbx3, cbx4; private List<CheckBox> checkBoxs = new ArrayList<CheckBox>(); @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() + "\n"; } } 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(); } }; }