【发布时间】:2014-07-07 02:08:22
【问题描述】:
我有一些 TextViews 动态添加到 LinearLayout。这些TextView都是可点击的,并且有一个onLongClickListener(我也打算以后加上onClickListener)
事情是这样的,我希望这些 TextView 在按下时改变它们的背景颜色,我读到你可以使用选择器来做这样的事情。
所以我在 res/drawable/text_view_pressed.xml 中制作了这个 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="#000000"/>
<item android:state_pressed="false"
android:color="#FFFFFF"/>
</selector>
我尝试创建一个 TextView 并像这样使用这个 xml 文件:
TextView t = new TextView(this);
t.setBackgroundColor(R.drawable.text_view_pressed);
但是当我这样做时,它会在 t.setBackgroundColor 中给出这个错误:“应该在这里传递解析的颜色而不是资源 ID:getResources().getColor(R.color.text_view_pressed)”但它不能作为如果我使用 getResources().getColor(R.color.text_view_pressed)。
有人知道怎么做吗?
【问题讨论】: