Change Checkbox value without triggering onCheckChanged
android, checkbox
Solution
No, you can't do it. The `onCheckedChanged` method is called directly from `setChecked`. What you can do is the following:
mCheck.setOnCheckedChangeListener (null);
mCheck.setChecked (false);
mCheck.setOnCheckedChangeListener (mListener);
See the source of CheckBox, and the implementation of `setChecked`:
public void setChecked(boolean checked) {
if (mChecked != checked) {
mChecked = checked;
refreshDrawableState();
// Avoid infinite recursions if setChecked() is called from a listener
if (mBroadcasting) {
return;
}
mBroadcasting = true;
if (mOnCheckedChangeListener != null) {
mOnCheckedChangeListener.onCheckedChanged(this, mChecked);
}
if (mOnCheckedChangeWidgetListener != null) {
mOnCheckedChangeWidgetListener.onCheckedChanged(this, mChecked);
}
mBroadcasting = false;
}
}
Problem
I have `setOnCheckedChangeListener` implemented for my `checkbox` Is there a way I can call ``` checkbox.setChecked(false); ``` without triggering the `onCheckedChanged`