본문 바로가기

Android - 기능

[Android] ImageView를 Toggle 버튼처럼 사용하기

#ImageView를 Toggle 버튼처럼 사용하기

1. state_selected에 따라 이미지가 달라지는 selector 작성

2. ImageView의 src를 작성한 selector로 지정

3. ImageView의  onClickListener에서 클릭할 때마다 isSelected 값 토글

 

1)

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/bg_ddf799" android:state_selected="true" />
    <item android:drawable="@drawable/bg_fcd7cc" />
</selector>

 

2)

<ImageView
    android:id="@+id/iv_toggle"
    android:layout_width="match_parent"
    android:layout_height="100dp"
    android:checked="true"
    android:src="@drawable/selector_toggle"
    app:layout_constraintTop_toTopOf="parent" />

 

3)

findViewById<ImageView>(R.id.iv_toggle).setOnClickListener {
        it.isSelected = !it.isSelected
}