Создайте папку цвета в каталоге res, создайте в ней селектор состояния и задайте изменение выбранного цвета эффекта.
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:state_checked="true" android:color="@color/green_00bc9c"></item>
<item android:state_checked="false" android:color="@color/grey_999"></item>
</selector>
установить прямо в файле макета
Android: textColor = «@color/color_radiobutton»
Тогда прямой фон и эффект щелчка радиокнопки реализуются вместе
Прямые ссылки в макете
Android: фон = «@drawable/screen_radio»
Создайте селектор состояния ниже drawable
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_checked="false"
android:drawable="@drawable/btn_write_selector" />
<item
android:state_checked="true"
android:drawable="@drawable/btn_selector" />
</selector>
Затем создайте btn_selector под возможностью рисования
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/grey_btn_pressed" android:state_pressed="true" />
<item android:drawable="@drawable/bg_text_normal" android:state_pressed="false"/>
</selector>
btn_write_selector
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/lightest_gray" android:state_pressed="true"></item>//按下
<item android:drawable="@color/white"></item>//松开
</selector>
Вот и все.
Чжан Цзиньлинь
https://editor.csdn.net/md/?articleId=128176325