TextView背景颜色的选择器

我试图TextView在用户触摸时更改Android 小部件的背景颜色。为此,我创建了一个选择器,该选择器存储在其中res/color/selector.xml,大致如下所示:


<?xml version="1.0" encoding="utf-8"?>

<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item

        android:state_pressed="true"

        android:color="@color/semitransparent_white"

        />

    <item

        android:color="@color/transparent"

        />

</selector>

的clickable属性TextView是true,以备不时之需。


当我将此选择器分配给TextViewas时android:background="@color/selector",在运行时出现以下异常:


错误/ AndroidRuntime(13130):由以下原因引起:org.xmlpull.v1.XmlPullParserException:二进制XML文件第6行:标记需要“ drawable”属性或定义可绘制对象的子标记


当我将属性更改为drawable时,它可以工作,但是结果看起来是完全错误的,因为ID似乎被解释为图像参考,而不是颜色参考(如“ drawable”所示)。


令我感到困惑的是,我可以直接将颜色参考(例如“ @ color / black”)设置为background属性。这正在按预期方式工作。使用选择器不起作用。


我也可以将选择器用作textColor没有问题。


将背景颜色选择器应用于TextViewAndroid中的正确方法是什么?


四季花海
浏览 878回答 3
3回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Android