여러개의 이미지버튼이 있는데
거기에 한개의 이미지 버튼을 선택하면 그 이미지는 선택되었다는 표시로 테두리가 잇는 이미지로 바뀌고
다른 이미지 버튼을 선택하면 기존 선택햇던 이미지는 원래 이미지로 바뀌고 해야되는데
이미지 버튼이 많아서 if문으로 처리하긴 힘든데 어떻게 처리하면될까요?
아래 selector로 해봣는데 버튼을 누르고 잇을때의 효과는 되는데 누르고 버튼을 때면 원래 이미지가 되어 버리네요
버튼을 선택하고 손을 땟을때도 이미지가 바뀌는게 xml에서 처리가 가능한지요?
sizebuttonstart.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- selected -->
<item android:state_selected="true"
android:drawable="@drawable/img_selected" />
<!-- pressed -->
<item android:state_pressed="true"
android:drawable="@drawable/img_selected" />
<!-- default -->
<item android:drawable="@drawable/img_normal" /> </selector>
사용하는 xml
<ImageButton
android:scaleType= "fitXY"
android:longClickable="true"
android:adjustViewBounds="true"
android:id="@+id/size_imageButton1"
android:layout_height="wrap_content"
android:src="@drawable/sizebuttonstart"
android:layout_width="wrap_content"
android:layout_weight="1"
android:background="#00000000"
>
</ImageButton>




img_selected 라는 이미지가 프레스 이미지인것 같네요.
<item android:state_selected="true"
android:drawable="@drawable/img_selected" />
위와같이 selected 상태일때도 정의해놓으셨으니, 코드상에서 View.setSelected 메서드 호출하시면 될것 같네요.
새로운 버튼을 눌렀을경우, 모든 버튼에대하여 루프를돈뒤, selected 된 객체가있다면, 원복시키는 방향으로 하면 될 것 같습니다.