2012-03-19 109 views
1

我试图的是检查所有这些复选框,当“cbkomplet”被选中。 但它不起作用。任何帮助? 这是我迄今为止的代码。检查所有复选框,当一个复选框在Android中单击?

在此先感谢。

CheckBox repeatChkBx = (CheckBox) findViewById(R.id.cbkomplet); repeatChkBx.setOnCheckedChangeListener(new OnCheckedChangeListener() { public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { if (isChecked) { cbreg.isChecked(); cbtank.isChecked(); cbzoop.isChecked(); cbkom.isChecked(); cbmaske.isChecked(); cbbl.isChecked(); } } });

回答

0

您所呼叫的方法isChecked(),它返回一个布尔值来告诉你,如果复选框被选中。请使用setChecked()代替,并传入true或false。

2

使用此代码。

chkbxAll = (CheckBox)findViewById(R.id.cbAll); 
    chkbxOne = (CheckBox)findViewById(R.id.chkbxOne); 
    chkbxTwo = (CheckBox)findViewById(R.id.chkbxTwo); 
    chkbxThree = (CheckBox)findViewById(R.id.chkbxThree); 
    chkbxFour = (CheckBox)findViewById(R.id.chkbxFour); 

chkbxAll .setOnCheckedChangeListener(new  
    CompoundButton.OnCheckedChangeListener() { 
     @Override 
     public void onCheckedChanged(CompoundButton buttonView, boolean 
      isChecked) { 
      if (chkbxAll.isChecked()) { 
       chkbxOne.setChecked(true); 
       chkbxTwo.setChecked(true); 
       chkbxThree.setChecked(true); 
       chkbxFour.setChecked(true); 
      }else { 
       chkbxOne.setChecked(false); 
       chkbxTwo.setChecked(false); 
       chkbxThree.setChecked(false); 
       chkbxFour.setChecked(false); 
      } 
     } 
    }); 
相关问题