Vielleicht wird dieses Bild besser, das Problem habe ich jetzt erklären,UITableViewCell bekommt neue Etiketten auf Scroll
Und das ist der Code, den ich jetzt haben.
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("cell") as UITableViewCell!
let songAlbumImage = UIImageView()
let songSongName = UILabel()
songSongName.text = "\(indexPath.row + 1): \(self.songNames[indexPath.row])"
songSongName.frame = CGRectMake(80, 0, screenWidth-80, 75)
songSongName.font = UIFont(name: "ElliotSans-Regular", size: 18)
songSongName.textColor = UIColor.whiteColor()
songSongName.numberOfLines = 2
let url = NSURL(string: String(songAlbumCovers[indexPath.row]))
let data = NSData(contentsOfURL: url!)
if (data != nil) {
songAlbumImage.hnk_setImageFromURL(url!, placeholder: UIImage(named: "placeholder1.png"), format: Format<UIImage>(name: "image"), failure: { (error) ->() in }) { (image) ->() in
songAlbumImage.image = image
}
} else {
songAlbumImage.image = UIImage(named: "placeholder1.png")
}
songAlbumImage.frame = CGRectMake(0, 0, 75, 75)
cell.addSubview(songAlbumImage)
cell.addSubview(songSongName)
return cell
}
ich nur das Etikett wollen zeigen, sobald
Warum fügen Sie songAlbumImage und songSongName in CellforrowIndex hinzu? Jedes Mal, wenn Sie ein neues Label und ein neues Bild hinzufügen, erscheint das doppelt. Verwenden Sie customCell für diese –
Zellen werden wiederverwendet. Sie sollten eine UITableViewCell-Unterklasse erstellen und die Bezeichnung & imageview hinzufügen. – Paulw11
Es gibt einen Grund, warum Sie Zugriff auf den Schnittstellen-Builder haben, ** verwenden Sie ihn **. – luk2302