我制作了一个表格视图,用一些数据填充单元格,效果很好。
问题在于,当我滚动表格时,所有单元格都混合在一起,你知道一种方法可以阻止它吗?
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let celda = tabla_reportes.dequeueReusableCellWithIdentifier("celda", forIndexPath: indexPath) as! celdaReportes
switch indexPath.section {
case 0:
celda.datos = tipos
celda.back = UIColor.lightGrayColor()
case 1:
celda.index = indexPath.row
celda.datos = fillArrayWithData(datos[indexPath.row] as! NSDictionary)
celda.back = UIColor.clearColor()
default:
break
}
celda.delegate = self
return celda
}
答案 0 :(得分:0)
因为细胞被重复使用以提高性能。例如,当您向上滚动tableview并且数字1单元格消失时,数字10单元格实际上是您的1号单元格。无论你在1号单元格中设置什么,并且未更新的值都保留在10号单元格中,依此类推......如果没有值,请尝试在单元格内放置一个空白值。
答案 1 :(得分:0)
你应该更新单元格的字段。也许你在这里UITableViewCell reuse good practice可以帮助你