我希望在Adapter的onBindViewHolder中根据数据变量改变textView的颜色。我尝试过以下代码:
if (survey.getAnonymous() == 0) {
holder.surveyIcon.setImageResource(R.drawable.ic_x);
holder.surveyAnonymous.setTextColor(R.color.red);
} else {
holder.surveyIcon.setImageResource(R.drawable.ic_check);
holder.surveyAnonymous.setTextColor(R.color.green);
}
R.color.red
会被红色下划线标出并显示:
应该使用getResources().getColor(R.color.red)
我尝试了这个方法,但还是出现了错误。 我已经尝试过以下方法:
holder.surveyAnonymous.setTextColor(R.color.red);
holder.surveyAnonymous.setTextColor(getResources().getColor(R.color.red));
holder.surveyAnonymous.setTextColor(getColor(R.color.red));
holder.surveyAnonymous.setTextColor(Color.parseColor(R.color.red);
这些方法都没有起作用,而且总是被红色下划线标记,正确的做法是什么?
holder.surveyAnonymous.setTextColor(ContextCompat.getColor(v.getContext(), R.color.red));
。 - Nancy