Reputation: 2291
In my xml:
<CheckBox android:id="@+id/checkboxUpdateLessonPlanAll"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/chkLessonPlanAll"
android:onClick="onCheckboxClicked"/>
In my java:
public void onCheckboxClicked(View view) {
//CheckBox box = (CheckBox) view;
CheckBox box = (CheckBox) findViewById(R.id.checkboxUpdateLessonPlanAll);
box.setChecked(!box.isChecked());
Log.v("qwerty", "checkbox clicked " + box.isChecked() + "!!");
}
I can see my log message in LogCat and it shows it as false when I click on the checkbox but its state doesn't change. It remains unchecked.
Upvotes: 5
Views: 23196
Reputation: 1
for MaterialCheckBox, use checkedState instead of setChecked.
setFalse:
checkbox.checkedState = STATE_UNCHECKED
setTrue:
checkbox.checkedState = STATE_CHECKED
Upvotes: 0
Reputation: 3485
To Make CheckBox
checked or unchecked you can also use like
box.setChecked(true);
box.setChecked(false);
and to get state of CheckBox
if(box.isChecked()) {
//do something here...
} else {
//do something here...
}
Upvotes: 4
Reputation: 14226
Why would you try to overwrite the default behavior with something like the default behavior? The checkbox toggles automatically on every click.
If you want to react on that, use the OnCheckedChangeListener
.
Upvotes: 10