How to check if android checkbox is checked within its onClick method (declared in XML)?

后端 未结 5 1485
终归单人心
终归单人心 2020-12-05 03:41

I have a checkbox in android which has the following XML:



        
相关标签:
5条回答
  • 2020-12-05 04:16

    You can try this code:

    public void itemClicked(View v) {
     //code to check if this checkbox is checked!
     if(((Checkbox)v).isChecked()){
       // code inside if
     }
    }
    
    0 讨论(0)
  • 2020-12-05 04:18

    try this one :

    public void itemClicked(View v) {
      //code to check if this checkbox is checked!
      CheckBox checkBox = (CheckBox)v;
      if(checkBox.isChecked()){
    
      }
    }
    
    0 讨论(0)
  • 2020-12-05 04:20
    <CheckBox
          android:id="@+id/checkBox1"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:text="Fees Paid Rs100:"
          android:textColor="#276ca4"
          android:checked="false"
          android:onClick="checkbox_clicked" />
    

    Main Activity from here

       public class RegistA extends Activity {
    CheckBox fee_checkbox;
     @Override
        protected void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.activity_regist);
     fee_checkbox = (CheckBox)findViewById(R.id.checkBox1);// Fee Payment Check box
    }
    

    checkbox clicked

         public void checkbox_clicked(View v)
         {
    
             if(fee_checkbox.isChecked())
             {
                // true,do the task 
    
             }
             else
             {
    
             }
    
         }
    
    0 讨论(0)
  • 2020-12-05 04:32

    This will do the trick:

      public void itemClicked(View v) {
        if (((CheckBox) v).isChecked()) {
            Toast.makeText(MyAndroidAppActivity.this,
               "Checked", Toast.LENGTH_LONG).show();
        }
      }
    
    0 讨论(0)
  • 2020-12-05 04:38
    @BindView(R.id.checkbox_id) // if you are using Butterknife
    CheckBox yourCheckBox;
    
    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.your_activity); 
        yourCheckBox = (CheckBox)findViewById(R.id.checkbox_id);// If your are not using Butterknife (the traditional way)
    
        yourCheckBox.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                yourObject.setYourProperty(yourCheckBox.isChecked()); //yourCheckBox.isChecked() is the method to know if the checkBox is checked
                Log.d(TAG, "onClick: yourCheckBox = " + yourObject.getYourProperty() );
            }
        });
    }
    

    Obviously you have to make your XML with the id of your checkbox :

    <CheckBox
        android:id="@+id/checkbox_id"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Your label"
        />
    

    So, the method to know if the check box is checked is : (CheckBox) yourCheckBox.isChecked() it returns true if the check box is checked.

    0 讨论(0)
提交回复
热议问题