滚动时,Swift iOS TableView单元格项目消失

时间:2016-04-25 20:18:31

标签: ios swift uitableview

当我滚动浏览我的tableview时,我看到列表中的一些徽章消失了。

我的单元格设置为自定义类CustomTableViewCell

CustomTableViewCell

import UIKit

class CustomTableViewCell: UITableViewCell {


    @IBOutlet weak var badgeIcon: AsyncImageView!
    @IBOutlet weak var title: UILabel!

    func configureCell(data: JSON) {

        if let itemType = data["item_type"].int, itemTitle = data["item_type"].string {

          title.text = itemTitle

          if itemType == 1 {
             badgeIcon.hidden = true
          } else {
             badgeIcon.hidden = false
          }
        }

的tableview

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {

        let cell = tableView.dequeueReusableCellWithIdentifier("myCustomCell") as! CustomTableViewCell

        let data = items[indexPath.row]
        cell.configureCell(data)

        //Dont show highlight
        cell.selectionStyle = UITableViewCellSelectionStyle.None

        return cell

    }

当我的tableView首次加载时,所有内容都显示正确, badgeIcon 显示/隐藏在应有的位置,但如果我向上/向下滚动几次 badgeIcon 将永远保持隐藏

1 个答案:

答案 0 :(得分:1)

UITableViewCell子类中,使用:

覆盖prepareForReuse
badgeIcon.hidden = true

这样你就可以使用"清洁平板"在重用时配置单元格。