[Android/Kotlin] Switch 상태값에 따라 TextView Color 변경하기

SoyoungLee·2023년 1월 6일
1

안드로이드/코틀린

목록 보기
54/68
post-thumbnail
post-custom-banner

💌 [Android/Kotlin] Switch 상태값에 따라 TextView Color 변경하기

스위치의 상태 값에 따라 TextView 의 색을 변경해주려 한다.

먼저 변경해줄 텍스트뷰의 컬러를 selector 를 이용해 적용해준다.

📌 selector_color.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:color="@color/black" android:state_selected="true" />
    <item android:color="@color/red"/>
</selector>
            <TextView
                android:id="@+id/textView"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="월,화,수,목,금,토,일"
                android:textColor="@color/selector_color"
                android:textSize="27dp" />

💜 스위치는 CompoundButton의 속성을 상속하므로 SwitchCheckedChangeListener 의 OnCheckedChangeListener 를 이용해준다.

// 스위치 상태 변경 리스너
switchOnOff.setOnCheckedChangeListener(SwitchCheckedChangeListener())
// 스위치 버튼 ON/OFF 에 따른 이벤트 리스너
inner class SwitchCheckedChangeListener : CompoundButton.OnCheckedChangeListener {
        override fun onCheckedChanged(buttonView: CompoundButton?, isChecked: Boolean) {
            binding.textView.isSelected = isChecked
        }
}

이렇게 해주면 스위치의 체크 상태에 따라 간단하게 텍스트 컬러 변경 가능 ~!

profile
Android Developer..+ iOS 슬쩍 🌱 ✏️끄적끄적,,개인 기록용 👩🏻‍💻
post-custom-banner

0개의 댓글