0

我有一个表格,其中一些行具有 textview 和 imageview。我正在使用选择器可绘制更改单击时行的背景。我还需要更改文本的颜色和单击时的 imageview 图像。我尝试使用 textview 的选择器作为在这里解释

文本视图的颜色需要在单击父表行而不是单击文本视图时更改。更改的颜色不应持续存在。它应该只是选定行单击的指示

但它似乎不起作用。任何帮助将不胜感激

4

2 回答 2

0

实现此目的的一种简单方法是在 xml 中为 textview 设置 onClick 属性

android:onClick="changeColor"

然后在视图所属的activity中有一个方法

public void changeColor(View v){
    v.setBackgroundColor(color);
}

v 将是调用该changeColor()方法的视图(因此它是您要更改颜色的视图)

您可以扩展它(或编写其他方法设置为其他视图的 onClick 方法)以通过将 v 转换为适当的视图来更改其他视图的属性(即 TextView 以更改文本颜色,或 ImageView 以更改可绘制的图像)

如果您想确切地找到调用该方法的视图,您可以打开 v.getId() ,其中 case 语句是 R 中设置的 id,即您使用android:id="@+id/name属性设置的那些

于 2012-08-22T02:16:10.857 回答
0

为表格行设置 OnTouchListener,如在android TextView 中:单击时更改文本颜色

在 ontouch 事件中,从行中获取 textview 子项并更改其颜色..

于 2012-09-02T09:57:37.663 回答