[英]How to change a TextView's (inside a listview) text color according to a variable?
I am trying to do it in adapter like the following 我正在尝试在适配器中执行以下操作
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view;
ZgrViewHolder holder;
mInflater = LayoutInflater.from(mContext);
QuestionObject questionObject = arrayList_.get(position);
if(convertView == null) {
convertView = mInflater.inflate(R.layout.zgr_listview_layout, parent, false);
holder = new ZgrViewHolder();
holder.questionTitle = (TextView)convertView.findViewById(R.id.questionTitle);
holder.questionDate = (TextView)convertView.findViewById(R.id.questionDate);
holder.questionContent = (TextView)convertView.findViewById(R.id.questionContent);
holder.senderContact = (TextView)convertView.findViewById(R.id.questionSenderContact);
holder.messageID = (TextView)convertView.findViewById(R.id.messageID);
holder.questionTitle.setText(questionObject.mailTitle);
holder.messageID.setText(String.valueOf(questionObject.messageID));
holder.questionDate.setText(questionObject.Date_);
holder.questionContent.setText(questionObject.mailContent);
holder.senderContact.setText(questionObject.senderContact);
if (questionObject.ReadState == 1){
holder.questionTitle.setTextColor(Color.argb(100,100,100,100));
}
convertView.setTag(holder);
} else {
holder = (ZgrViewHolder)convertView.getTag();
}
return convertView;
}
But when listview is complete, none of the textviews has the color I assign. 但是,当listview完成时,没有一个textview具有我指定的颜色。 I debug and
ReadState
variable is sometimes 1, but still nothing. 我调试并且
ReadState
变量有时为1,但仍然没有。
try this 尝试这个
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view;
ZgrViewHolder holder;
mInflater = LayoutInflater.from(mContext);
QuestionObject questionObject = arrayList_.get(position);
if(convertView == null) {
convertView = mInflater.inflate(R.layout.zgr_listview_layout, parent, false);
holder = new ZgrViewHolder();
holder.questionTitle = (TextView)convertView.findViewById(R.id.questionTitle);
holder.questionDate = (TextView)convertView.findViewById(R.id.questionDate);
holder.questionContent = (TextView)convertView.findViewById(R.id.questionContent);
holder.senderContact = (TextView)convertView.findViewById(R.id.questionSenderContact);
holder.messageID = (TextView)convertView.findViewById(R.id.messageID);
}
convertView.setTag(holder);
} else {
holder = (ZgrViewHolder)convertView.getTag();
}
holder.questionTitle.setText(questionObject.mailTitle);
holder.messageID.setText(String.valueOf(questionObject.messageID));
holder.questionDate.setText(questionObject.Date_);
holder.questionContent.setText(questionObject.mailContent);
holder.senderContact.setText(questionObject.senderContact);
if (questionObject.ReadState == 1){
holder.questionTitle.setTextColor(Color.argb(100,100,100,100));
return convertView;
}
请在这段代码之外分配textview颜色if(convertView == null){}谢谢并反馈我
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.