private class MapListAdapter extends BaseAdapter {
     
     private Context mContext;
          
        public MapListAdapter(Context context) {
            mContext = context;
        }                
        public int getCount() {
            return mapList.size();
        }        
        public Object getItem(int position) {
            return mapList.get(position);
        }        
        public long getItemId(int position) {
            return position;
        }        
        public View getView(int position, View convertView, ViewGroup parent) {
         
         Log.d(TAG, "getView() ::: " + position);
         
         MapListView sv;
            if (convertView == null) { 
                sv = new MapListView(mContext);
                
            } else {
                sv = (MapListView)convertView;
            }
                            
            sv.setTitle(mapList.get(position).getTitle());
            sv.setMapImage(mapList.get(position).getMapImage());
            sv.setExpanded(mapList.get(position).expanded);
            
            return sv;
        }        
 }


리스트 어댑터는 위의 소스와 같습니다. 리스트 상에서 mapList 의 내용이 뿌려지는데,
처음 시작 땐 제대로 뿌려집니다. 그런데, 리스트의 항목을 클릭 했을 때엔.... getView()로 들어오는 포지션 값이 .. 이상하게 들어옵니다.
어댑터의 notifyDataSetChanged() 메서드가 실행되지 않으면 제대로 들어옵니다만,
저 메서드가 실행되면.... 엉뚱한 포지션 값이 들어 옵니다.
그리고, 처음에.... mapList 를 불러올 때... sv 를 list의 0번만 새로 생성하는 건지?...
아니면, 처음엔 list의 모든 항목이 새로 생성되는지...

자꾸 포지션 값이 틀려서.. 엉뚱한 결과물이 나옵니다.. 아, 오늘 하루 종일 삽질 했는데.....

도움을 부탁드립니다.