安卓给textcolor设置selector

孟新知
2023-12-01
  1. 在安卓开发中我们可能会涉及给文字设置selector的时候,一般情况我们可能会向下面这种写法:
  2.   <CheckBox  
  3.                 android:id="@+id/checkbox"  
  4.                 android:layout_width="wrap_content"  
  5.                 android:layout_height="wrap_content"   
  6.                 android:gravity="center"  
  7.                 android:button="@null"   
  8.                 android:textColor="@drawable/selector_text_color"  
  9.                 />  
  10. 结果你可能或发现字体颜色会变成其他颜色,或者无法达到预期效果。
  11. 下面说下解决方案:
  12. 就是在res文件夹下重新建一个color文件夹,然后里面再写一个selector:
  13. <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:color="@color/pink" android:state_checked="true"  />
        <item android:color="@color/pink" android:state_pressed="true"/>
        <item android:color="@color/grey_dark_9" android:state_checked="false"/>
    </selector>
    然后在用的时候:
    1. <CheckBox  
    2.                 android:id="@+id/checkbox"  
    3.                 android:layout_width="wrap_content"  
    4.                 android:layout_height="wrap_content"   
    5.                 android:gravity="center"  
    6.                 android:button="@null"   
    7.                 android:textColor="@color/selector_text_color"  
    8.                 />  
    好了,问题完美解决
 类似资料: