두개의 이미지가 있습니다.

이미지를 번갈아 가면서 찍으려고 하는데..

잘 안되네요;;

일단 소스코드는 아래와 같구요..

public void letter_list(){
  
  int today = today_boy;

  lv2=(ListView)findViewById(R.id.letter_list);
  Item[] item = new Item[2];

  for(int i=0;i<2;i++){
    item[i] = new Item(today); 
    additem.add(item[i]);
    today = today_girl;
  }
   i_adapter = new ItemAdapter(this, R.layout.main1_row1, additem);
   lv2.setAdapter(i_adapter);
 }


class ItemAdapter extends ArrayAdapter<Item> {
  
  public ArrayList<Item> items;
 
  public ItemAdapter(Context context, int textViewResourceId, ArrayList<Item> items) {                
  super(context, textViewResourceId, items);                
  this.items = items;        
  }

  public View getView(int position, View convertView, ViewGroup parent) {
           View v = convertView;
          
           if(v == null){
            LayoutInflater vi = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            v = vi.inflate(R.layout.main1_row1, null);
           }
       
           Item i = items.get(position);
         
           if(i != null){           
            TextView today_data = (TextView)v.findViewById(R.id.today_data);
            TextView today_percent = (TextView)v.findViewById(R.id.today_percent);
            ImageView icon = (ImageView)v.findViewById(R.id.icon);                  
                //flag 초기값은 0으로 되있습니다.
              if(flag == 0){icon.setImageResource(R.drawable.i_mini);
              Log.i("111111111", "111111111");
              }
              else if(flag == 1){icon.setImageResource(R.drawable.you_mini);
              Log.i("2222222222", "2222222222");
              } 
              flag=1;
               if(today_data != null){today_data.setText(i.get_todayData());}                           
            if(today_percent != null){today_percent.setText(i.get_todayData());}
           
           }             
           return v;
        }
}

letter_list 함수를 불러, 처리과정에서 getview가 호출이 되고 flag값을 통해 i_mini이미지와 you_mini 이미지를 번갈아 찍으려고 하는데요... 잘 안되네요;; log값을 찍어보니까 총 4번 호출이 되는데.. 처음에 1111111 값이 찍히고 22222222값이 3번이 찍힙니다..
마지막에 2222222가 3번 찍히는 걸로 봐서는 앞의 1111111에 찍히는 이미지를 덮어씌워주는 것 같은데;;
도무지 getview가 어떤 형식으로 호출이 되고 돌아가는지 감이 잡히질 않습니다..;;
고수분들 도움부탁드립니다..!!