마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

라디오 형식 버튼 말고 체크버튼 형식을...

0 추천
체크버튼 형식에 대해서 4개가 있을때 1개만 선택 할 수 있도록 소스를 작성 하고 있는데요, 생각보다 잘 안되네요...

 

public void onCheckedChanged(CompoundButton buttonView,
    boolean isChecked) {
   
    if(cb1.isChecked() == true) {
        cb2.setEnabled(false);
        cb2.setEnabled(false);
        cb2.setEnabled(false);
       }else if(cb2.isChecked() == true) {
        cb1.setChecked(false);
        cb3.setChecked(false);
        cb4.setChecked(false);
       }else if(cb3.isChecked() == true) {
        cb1.setChecked(false);
        cb2.setChecked(false);
        cb4.setChecked(false);
       }else if(cb4.isChecked() == true) {
        cb1.setChecked(false);
        cb2.setChecked(false);
        cb3.setChecked(false);
       }
   
  }

 

이너블로 써도 안되고 체크드로 해도 잘 안되는데.

 

** 4개의 버튼이 있다면, 1개 버튼만 선택되고

예를 들어 1번 버튼 선택 후에 2번 선택하면 1번에 체크가 지워짐

 

이런 방식을 구사하려면 라디오버튼 말고 어떻게 해야되나요... 아랫분 답변을 인용하는데 잘 안되고 있습니다...

 

기발한 아이디어 있으신분 안계십니까...
이게뭐야d (1,040 포인트) 님이 2013년 3월 5일 질문

2개의 답변

0 추천

  if(cb1.isChecked() == true) {
        cb2.setEnabled(false);
        cb2.setEnabled(false);
        cb2.setEnabled(false);

이거 잘못된거 아닌가요 ?

 

건방진프로그래머 (26,630 포인트) 님이 2013년 3월 5일 답변
0 추천

이프문이 잘못 된거 같은데요????

근데 이기능을 사용하려면.... 아무리 봐도 라디오가 답이지만 굳이 쓰신다니....

 

if(buttonView.getId() == ck1.getId()){
 
}else if(buttonView.getId() == ck2.getId()){
 
}else if(buttonView.getId() == ck3.getId()){
 
}else if(buttonView.getId() == ck4.getId()){
 
}
요롷고롬 어느 버튼이 눌리는지 체크 하시고 처리 해주심 돼겠죠....
여기까지면 답을 드린거 같네요...
익명사용자 님이 2013년 3월 5일 답변
감사합니다 익명사용자님 힌트를 얻어서 해결 답니다 ㅋ
그런데... 체크 해제를 해야 다른버튼이 눌러서 지금도 고민 좀 하고 있습니다 ㅋ
...