Android アプリ用にカスタムの膨張した listView を作成しましたが、getView() メソッドに問題があります。
public class BinderData extends BaseAdapter {
    private LayoutInflater inflater;
    private ArrayList targetList;
    private ViewHolder holder;
    private Activity nikola;
    private Context context;
    private static ArrayList genres = new ArrayList();
    public BinderData(Activity act, List<Genre> map) {
        targetList = new ArrayList();
        for (int i = 0; i<map.size(); i++){
            Genre genre = map.get(i);
            targetList.add(genre);
            ArrayList<Artist> aList = genre.getArtists();
            for (int j = 0; j<aList.size(); j++){
                targetList.add(aList.get(j));
            }
        }
        this.nikola = act;
        inflater = (LayoutInflater) act
                .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    }
そして、ここに私の getView() メソッドがあります
public View getView(int position, View convertView, ViewGroup parent) {
        View vi = convertView;
        if (convertView == null){
            ViewableItem item = (ViewableItem)targetList.get(position);
            if (item.isTypeOf().equalsIgnoreCase("genre")){
                vi = inflater.inflate(R.layout.category_row, null);
                holder = new GenreViewHolder();
                ((GenreViewHolder)holder).textViewGenreTitle = (TextView)vi.findViewById(R.id.textViewCategoryTitle);
                String s = ((Genre)item).getTitle();
                holder.setTitle(s);
            }else{
                vi = inflater.inflate(R.layout.list_row, null);
                holder = new ArtistViewHolder();
                ((ArtistViewHolder)holder).textViewArtistName = (TextView)vi.findViewById(R.id.textViewAuthorNameHome);
                String s = ((Artist)item).getArtist();
                holder.setArtistName(s);
            }
            vi.setTag(holder);
        }else{
            holder = (ViewHolder)vi.getTag();
        }
        return vi;
    }
リストには 2 種類のレイアウトがあります。1 つはカテゴリ タイトル用で、もう 1 つはそのカテゴリのアイテム用です。
http://imgur.com/xbPfGTi - 写真はこちら
listView に表示する必要があるデータで満たされた targetList を作成しました。(コンストラクターで)そして問題があります!リスト内のアーティストが繰り返され、カテゴリが適切な場所にありません。
アイデアはありますか?