[안드로이드] CheckBox setChecked() 함수와 OnCheckedChangeListener

기록을 안하면.. 자꾸 잊어버리네요.

 

CheckBox 사용시.. 특정 변수의 값에 따라서 코딩으로..

체크 표시하거나 체크 표시를 제거하는 경우가 종종 있습니다.

 

그러기 위해선 myCheckBox.setChecked(true); 이런 식으로 함수를 사용하면 되는데

 

문제는.. 이 함수를 호출하면 자동으로 등록된 OnCheckedChangeListener까지 호출이 된다는 것입니다.

이를 반드시 기억하는게 좋겠습니다.

 

특히.. RecyclerView의 Adapter에서 사용되며.. checkBox가 여러개가 사용된다면..

문제를 찾기 어려울 수 있습니다.

 

저도.. 방금 여기서 문제가 생겨서 삽질을 오래 했네요;;

 

참고

https://stackoverflow.com/questions/15523157/change-checkbox-value-without-triggering-oncheckchanged

작성자

Posted by 드리머즈

관련 글

댓글 영역