UICollectionViewをスクロールすると描画が重なってしまう


UICollectionViewにUILabel、UIImageViewを描画しています。  
cellForItemAtIndexPathでaddSubViewしているUILabelが  
スクロールするたびに重なってしまう現象で悩んでいます。

※UICollectionView自体はStoryboard上にあり、ReuseIdentifierを設定しています。

subviewを削除するように入れてみても重なってしまいます。  
どこか間違っていますでしょうか？  
アドバイスいただけますと幸いです。

[code]

    - (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {
    
    UICollectionViewCell * cell;
    NSString *cellIdentifier = @"newscell";
    cell = [collectionView dequeueReusableCellWithReuseIdentifier:cellIdentifier forIndexPath:indexPath];
    
    for (UIView* view in cell.contentView.subviews)
    {
       [view removeFromSuperview];
    
    }
    
    UILabel *titleLabel = [[UILabel alloc] init];
    UILabel *dateLabel = [[UILabel alloc] init];
    UILabel *textLabel = [[UILabel alloc] init];
    UIImageView *imageView = [[UIImageView alloc] init];
    
    //ここに各Viewのframeなどを設定するコード(割愛)
    
    [cell addSubview:titleLabel];
    [cell addSubview:dateLabel];
    [cell addSubview:textLabel];
    return cell;
    
    }
    
[/code]



[code]

    //ここに各Viewのframeなどを設定するコード(割愛)
    
    // [cell addSubview:titleLabel];
    [cell.contentView addSubView: titleLabel];
    // [cell addSubview:dateLabel];
    [cell.contentView addSubView: dateLabel];
    // [cell addSubview:textLabel];
    [cell.contentView addSubView: textLabel];
    return cell;
    
    }
    
[/code]

このように変更したら、どうなりますか？



[code]

    //ここに各Viewのframeなどを設定するコード(割愛)
    
    // [cell addSubview:titleLabel];
    [cell.contentView addSubView: titleLabel];
    // [cell addSubview:dateLabel];
    [cell.contentView addSubView: dateLabel];
    // [cell addSubview:textLabel];
    [cell.contentView addSubView: textLabel];
    return cell;
    
    }
    
[/code]

このように変更したら、どうなりますか？

