我想在点击列表项时更改文字颜色。
我在res / color / textcolor_selector中创建了选择器文件,但单击textview时未更改textcolor
下面是我的代码
TextView textView = (TextView) view.findViewById(R.id.txt);
textView.setText(listArr[position]);
textView.setTextColor(getResources().getColor(R.color.textcolor_selector));
textcolor_selector.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true" android:color="@color/selectedcolor" />
<item android:state_focused="true" android:color="@color/selectedcolor" />
<item android:state_pressed="true" android:color="@color/selectedcolor" />
<item android:color="@color/nonselectedcolor" />
</selector>
答案 0 :(得分:0)
而不是只传递一种颜色;
getResources().getColor(R.color.textcolor_selector)
您应该改为传递ColorStateList;
getResources().getColorStateList(R.color.textcolor_selector)
在您当前的实施中,您调用的是TextView.setTextColor(int)
方法,而不是.setTextColor(ColorStateList)
。