2013-11-26 50 views
0

我使用选择器在用户触摸时更改textview颜色。但是,颜色永远是黑色的,触摸时不会改变。这里是我的代码:TextView颜色在点击上没有变化

@色/ red.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
<item android:state_focused="true" android:state_pressed="false" android:color="#ffffff" /> 
<item android:state_focused="true" android:state_pressed="true" android:color="#ffffff" /> 
<item android:state_focused="false" android:state_pressed="true" android:color="#ffffff" /> 
<item android:color="#000000" /> 

的TextView:

<TextView 
    android:id="@+id/delete" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_x="59dp" 
    android:layout_y="449dp" 
    android:text="Delete" 
    android:textAppearance="?android:attr/textAppearanceLarge" 
    android:textColor="@color/red" 
    android:textSize="20dp" /> 

解决方案:使用setOnClickListener()为TextView的,而不是setOnTouchListener()。

+0

检查此帖:http://stackoverflow.com/a/9982308/2065418 –

+0

我不知道它是否相关,但你可以尝试设置android:clickable =“true”它可能以某种方式解决你的问题,因为你的选择器对我来说似乎没问题... – yahya

+0

Thanks.but它没有解决。 –

回答

1

编辑

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

在color.xml

<drawable name="color_black">#000000</drawable> 
<drawable name="color_white">#ffffff</drawable> 
+0

它仍然是黑色的。 –

+0

你做了这个===> textview.setOnClickListener()和textView.setClickable(true) – Hardik

+0

我用textview.setOnTouchListener() –

0

尝试

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
<item android:state_focused="true" android:color="#ffffff" /> 
<item android:state_pressed="true" android:color="#ff0000" /> 
<item android:color="#000000" /> 
</selector> 
+0

没有效果,它仍然是黑色..我错了我的文本视图编码? –

+0

确保您在可绘制文件夹中有red.xml,并使用@ drawable/red而不是android:textColor =“@ color/red” –

0

你好,请尝试这可能是这是有益的

<item android:state_selected="true" android:color="#ffffff" /> 
<item android:state_focused="true" android:color="#000000" /> 
<item android:state_pressed="true" android:color="#000000" /> 
<item android:color="#000000" /> 
+0

如果你想给答案然后张贴这个答案作为答案。 ..不作为评论..! – Piyush

+0

我正在面临在评论中粘贴代码的问题,这就是为什么我评论 – anddevmanu