버튼이 눌러지거나, 포커스를 받는경우
아이콘 모양을 변경시켜 이벤트가 발생함을 표시할 필요가 있다
예) 평소 왼쪽과 같은 상태이지만 터치나, 포커스를 받는 이벤트가 발생할 경우 오른쪽 모양처럼 변한다.
menuiconsubject.png menuiconsubjectselected.png
이럴경우 Selector 라는 놈을 사용한다.
기본적인 파일 위치와 정의는 아래와 같이 한다.
res/drawable/menu_item_subject.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android"
android:dither="true">
<item android:state_pressed="true" android:drawable="@drawable/menuiconsubjectselected" />
<item android:state_focused="true" android:drawable="@drawable/menuiconsubjectselected" />
<item android:drawable="@drawable/menuiconsubject" />
</selector>
정의된 selector를 사용하는 방법은 아래와 같다.
<ImageView
android:id="@+id/icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content" android:clickable="true" android:src="@drawable/menuiconsubject"/>
댓글 없음:
댓글 쓰기