Databing RadioButton drawableTop selector不生效问题

前言:

最近在使用RadioButton drawabletop selector时,一直不能生效,被此问题困扰好久,经过不断尝试,最终解决了该问题,主要问题就出在selector文件上。当然并没有深究是databing的原因,还是gradle原因导致。

环境:

AndroidStudio 3.5
distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip
classpath 'com.android.tools.build:gradle:3.5.0'

select文件:

错误格式

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
    <item android:drawable="@mipmap/personal_center_normal"></item>
    <item android:drawable="@mipmap/personal_center_select" android:state_checked="true"></item>
</selector>

正确格式

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
    <item android:drawable="@mipmap/personal_center_normal" android:state_checked="false"></item>
    <item android:drawable="@mipmap/personal_center_select" android:state_checked="true"></item>
</selector>

Note:

  1. 在以前使用的时候经常省略android:state_checked=”false”,也可以正常生效
  2. 但现在最好还是指定android:state_checked=”false”,否则就是不能根据选中状态实时变化。

转载请注明出处:http://www.wolfnx.com/2018/10/07/RadioButtonSelector

作者 : wolfnx
邮箱 : wolfnx@outlook.com
邮箱2 : lostnx@gmail.com

Click Me