Aus irgendeinem Grunde Scrolling, wenn ich die Etiketten auf meiner UICollectionView Zelle bewegen fügt das Etikett über die aktuellen, wie unten zu sehen:Swift: UICollectionView Zelle Vervielfältigung von Etiketten- und Bild, wenn
Hier ist meine Code:
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let myCell = collectionView.dequeueReusableCell(withReuseIdentifier: "MyCell", for: indexPath as IndexPath)
let centerY = (myCell.frame.size.height/2) - 50
let title = PaddingLabel(frame: CGRect(x: 120, y: centerY, width: 200, height: 100))
let size = CGRect(x: 10, y: centerY, width: 100, height: 100)
let imageview: UIImageView = UIImageView(frame: size)
let image: UIImage = UIImage(named: categoryImages[indexPath.row])!
imageview.image = image
title.textAlignment = .left
title.clipsToBounds = true
title.numberOfLines = 2
title.font = title.font.withSize(25)
title.text = categoryTopics[indexPath.row]
switch (categoryColours[indexPath.row]) {
case ("ef5c42"):
myCell.backgroundColor = UIColor(r: 239,g: 92,b: 66)
title.textColor = .white
case ("red"):
myCell.backgroundColor = UIColor.red
case ("green"):
myCell.backgroundColor = UIColor.green
case ("blue"):
myCell.backgroundColor = UIColor.blue
default:
myCell.backgroundColor = UIColor.yellow
title.textColor = .white
}
myCell.contentView.addSubview(title)
myCell.contentView.addSubview(imageview)
return myCell
}
ich habe das Hinzufügen versucht:
for view in cell.subviews {
view.removeFromSuperview()
}
, aber das scheint nur eine leere Zelle anzuzeigen.
Sie erhalten die Punkte, da ich vergessen habe, contentView in meiner for-Schleife hinzuzufügen. Das hat es gelöst. Vielen Dank. – JamesG