Cor de fundo dos itens do Android-Listview mudando ao rolar
MinhasListView
contém doisTextviews
. Em uma linha, primeiro, um é para o nome e o segundo é para o resultado. Eu preciso mudar a cor de fundo do resultadoTextView
de acordo com o resultado. Como se passar então o resultadoTextView
a cor será verde quando falhar o resultadoTextView
a cor será vermelha. Eu tenho dez linhas na minhaListView
. Eu tentei assim
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
ViewHolder holder;
if(convertView==null)
{
holder = new ViewHolder();
convertView = inflater.inflate(R.layout.items, null);
holder.imgViewLogo = (ImageView) convertView.findViewById(R.id.imgViewLogo);
holder.txtViewTitle = (TextView) convertView.findViewById(R.id.txtViewTitle);
holder.txtViewDescription = (TextView) convertView.findViewById(R.id.txtViewDescription);
holder.txtholder = (TextView) convertView.findViewById(R.id.holder1);
holder.img = (ImageView) convertView.findViewById(R.id.temperrr);
convertView.setTag(holder);
}
else
holder=(ViewHolder)convertView.getTag();
ItemBean bean = (ItemBean) itemList.get(position);
holder.imgViewLogo.setImageResource(bean.getImage());
holder.txtViewTitle.setText(bean.getTitle());
holder.txtViewDescription.setText(bean.getDescription());
//------------------
if (position==0)
{
if(GridviewAdapter.glu>=81)
{
holder.img.setImageResource(R.drawable.red_arrow);
holder.txtViewDescription.setBackgroundResource(R.color.resultred);
holder.txtholder.setBackgroundResource(R.color.resultred);
}
else if (GridviewAdapter.glu==79||GridviewAdapter.glu==80)
{
holder.img.setImageResource(R.drawable.orange_arrow);
holder.txtViewDescription.setBackgroundResource(R.color.resultoren);
holder.txtholder.setBackgroundResource(R.color.resultoren);
}
else
{
holder.img.setImageResource(R.drawable.resultarrawnocolor);
holder.txtViewDescription.setBackgroundResource(0);
holder.txtholder.setBackgroundResource(0);
}
}
holder.img.setImageResource(R.drawable.resultarrawnocolor);
return convertView;
}
Mas, ao rolar a lista a mudança de cor do fundo de outros itens aleatórios. O que eu tenho que fazer. Como posso controlar os itens em cada posição no listview. O código acima é apenas para a primeira linha. Estou certo?