Android CheckBox在一个字符串中显示多个文本选择

时间:2016-03-15 10:18:30

标签: android android-checkbox

我有7个复选框,显示工作日,现在我想要做的是根据所选复选框将每个复选框的文本存储在单个字符串中。 我正在做的是使用 if else条件,但它有点长。

任何帮助我如何最小化代码。

对于每种情况,代码都是这样的。

 if(mon.isChecked()&& tue.isChecked()){
       MON=mon.getText().toString();
       TUE=tue.getText().toString();
       text=MON+","+TUE;
   }

2 个答案:

答案 0 :(得分:0)

您应该使用onCheckBoxClickedListener并在id上使用switch语句。

答案 1 :(得分:0)

添加

android:onClick="onCheckboxClicked"到您的所有复选框

和 写下 onCheckboxclicked(),如下所示

public void onCheckboxClicked(View view) {
    // Is the view now checked?
    boolean checked = ((CheckBox) view).isChecked();

    // Check which checkbox was clicked
    switch(view.getId()) {
        case R.id.mon:
            if (checked)
                text = text + " mon";
            else
            break;
        case R.id.tue:
            if (checked)
                text = text + " tue";
            else
            break;
    }
}