2012년 6월 19일 화요일

버튼 하나씩만 클릭되도록 만들기


"동의" 와 "동의안함" 과 같은 버튼이 있는 경우, 
selector로 on과 off 두개의 이미지를 입히게 됨


1. "동의" selector

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/yes_on" android:state_pressed="true"/> 
    <item android:drawable="@drawable/yes"/> <!-- default -->
</selector>




2. "동의안함" selector

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/no_on" android:state_pressed="true"/> 
    <item android:drawable="@drawable/no"/> <!-- default -->
</selector>





onClick 이벤트 시 "동의"가 눌러지면 "동의안함"이 안되도록 
(반대의 경우도 같은 방식으로) 만들어야함



case R.id.f300_button4: // 동의
((Button) findViewById(R.id.f300_button4)).setBackgroundResource(R.drawable.yes_on);
((Button) findViewById(R.id.f300_button5)).setBackgroundResource(R.drawable.no);
m_sAgreeFlag = true;
break;
case R.id.f300_button5: // 동의 안함
((Button) findViewById(R.id.f300_button5)).setBackgroundResource(R.drawable.no_on);
((Button) findViewById(R.id.f300_button4)).setBackgroundResource(R.drawable.yes);
m_sAgreeFlag = false;
break;

아 왜 항상 setBackgroundResource가 생각이 안날까..;;

댓글 없음:

댓글 쓰기