seletor 字体颜色,选择状态修改中的遇到的坑

本文介绍了如何使用XML选择器为Android TextView设置不同状态下的字体颜色,并提供了按钮不同状态下背景图片的选择器配置方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1:修改字体颜色的用法:text_seletor.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_selected="false"
        android:state_pressed="false"
        android:color="@android:color/white"/>
    <item
        android:state_selected="true"
        android:state_pressed="true"
        android:color="@color/bgc_ec6c00"/>
</selector>
 写好这个seletor之后直接在想要改变的textview中设置textcolor = drawable/text_seletor属性完成选择的状态


这样就好可吗?

不是的,会发现只有未选择状态的颜色正确,而另外一种状态会看不到,这个解决办法就是

直接把state_selected = true 这个去掉

2:正确的写法

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_selected="false"
        android:state_pressed="false"
        android:color="@android:color/white"/>
    <item
        android:state_pressed="true"
        android:color="@color/bgc_ec6c00"/>
</selector>

3:  按钮选择状态(有顺序排列)

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_pressed="true"  android:drawable="@drawable/rectangle_btn_p">

    </item>
    <item android:state_selected="true" android:drawable="@drawable/rectangle_btn_p">

    </item>
    <item android:state_pressed="false" android:drawable="@drawable/rectangle_btn_normal">

    </item>
</selector>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值