ListView alternative row color-Get dis-appear after scroll
<p>I have a listview with an image and a textview and I am applying alternative row color for the list view in my class named MyArrayAdaptor which extends ArrayAdapter.
When the listview loads first, the alternative row color appears, but after I scroll the listview items a bit faster the color get mixed, that is the second color overrides the first color.</p>

<p>How to handle this case. I am suck.</p>

<p>Please help me.</p>

<p>Thanks in advance</p>

<p>Here is ma class MyArrayAdaptor :</p>

<pre><code>public class MyArrayAdaptor extends ArrayAdapter&lt;String&gt; {
     private  Activity context;
     private  String[] text1;   
     private  String[] image1;
     private int TextViewID;
     private int ImageViewID;
     private int LoyoutID;
     //private int[] colors = new int[] { 0xFFFFFFFF, 0xb2b2b2FF };
     // private int[] colors = new int[] { 0x30FF0000, 0x300000FF };
     private int[] colors = new int[] { 0x30FF0000, 0x30000000 };


     public MyArrayAdaptor(Activity context,int id, String[] text1,String[] image,int textViewID, int imageViewID) {        
     super(context,id, text1);  
     this.context = context;
     this.text1 = text1;    
     this.image1=image;
     this.TextViewID=textViewID;
     this.ImageViewID=imageViewID;
     this.LoyoutID=id;
     }

     // static to save the reference to the outer class and to avoid access to
     // any members of the containing class
     static class ViewHolder {
     public ImageView imageView;
     public TextView textView;

     }

     @Override
     public View getView(int position, View convertView, ViewGroup parent) {
     // ViewHolder will buffer the assess to the individual fields of the row
     // layout

     ViewHolder holder;

     View rowView = convertView;     

     if (rowView == null) {      
     LayoutInflater inflater = context.getLayoutInflater();
     rowView = inflater.inflate(LoyoutID, null, true);
     //color
     if (position % 2 == 0) {
            rowView.setBackgroundColor(colors[0]);          
            }
         else {
            rowView.setBackgroundColor(colors[1]);      
         }  
     holder = new ViewHolder();  
     holder.textView = (TextView) rowView.findViewById(TextViewID); 
     holder.imageView = (ImageView) rowView.findViewById(ImageViewID);

     rowView.setTag(holder);

     } else {
     holder = (ViewHolder) rowView.getTag();
     }   
     holder.textView.setText(text1[position]);

     //holder.imageView.setImageDrawable(LoadImageFromWebOperations(image[position]));
     holder.imageView.setBackgroundResource(R.drawable.icon);

     return rowView;
     }

     private Drawable LoadImageFromWebOperations(String url)
     {
     try     
     {   
     InputStream is = (InputStream) new URL(url).getContent();   
     Drawable d = Drawable.createFromStream(is, "src name");

     return d;
     }catch (Exception e) {

     System.out.println("Exc="+e);

     return null;

     }}
    }
</code></pre>
