어제 비트맵 용량 관련 질문했던 갤런데 간단하게 소스하나 올려볼게


public View getView(int position, View convertView, ViewGroup parent) {


            if (convertView == null) {

                LayoutInflater vi = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

                convertView = vi.inflate(R.layout.list, null);

    holder = new ViewHolder();

    holder.text1 = (TextView) convertView.findViewById(R.id.artist);

    holder.text2 = (TextView) convertView.findViewById(R.id.musictext);

    holder.image1 = (ImageView) convertView.findViewById(R.id.album_art);

    holder.albumId = Long.parseLong(items.get(position).draw);


    convertView.setTag(holder);

            }

            else {

    holder = (ViewHolder) convertView.getTag();

    }


            MusicList p = items.get(position);

            if (p != null) {

            albumArt = MusicUtil.getArtworkQuick(context, Integer.parseInt(p.draw), 50, 50);

                    if (holder.text2 != null){

                    holder.text2.setText(items.get(position).name);                            

                    }

                    if( holder.image1 != null ){

                holder.image1.setImageBitmap(albumArt);

                if(albumArt == null)

                holder.image1.setImageResource(R.drawable.ic_launcher);

                if(p.data.matches("<.*>"))

                holder.image1.setImageResource(R.drawable.folder);

    }

                    if ( holder.text1 != null) {

                    holder.text1.setText(items.get(position).artist);

                    }


            }

            return convertView;

    }


이게 겟뷰 메소드를 오버라이딩한 소스거든


컨텐트뷰가 null이라면 태그를 생성하고, 컨텐트뷰가 이미 생성됐다면 재사용하는 방식인데


그래도 굵은색 글씨로 칠한 비트맵 객체 생성하는 부분 때문에 버벅임이 너무 심한거같음


저 메서드는 getArtworkQuick이라고 네이버에 치면 바로 나오더라