是否有任何理由,为什么我的覆盖集高亮UITableViewCell不会被调用,但UITableViewDelegate方法呢?

问题描述:

使用Swift,我重写了一个单元格的highlighted属性以改变它在高亮显示时的外观,但是当我点击它时它永远不会被调用。是否有任何理由,为什么我的覆盖集高亮UITableViewCell不会被调用,但UITableViewDelegate方法呢?

override var highlighted: Bool { 
    didSet { 
     println("called") 
    } 
} 

然而,被称为UITableViewDelegate方法,didHighlightCellAtIndexPath,被称为每次。

这怎么可能?

确保UITableView实际上正在填充您的UITableViewCell子类的实例。也就是说,确保tableView(_:cellForRowAtIndexPath:)实际上是返回您的UITableViewCell子类的对象。如果不是,那么该属性覆盖将永远不会被使用。

+0

是的,我检查了一下,确实如此。 –

+0

@DougSmith嗯没关系。是否有可能看到你的项目的一个(可能简化的)副本? – ndmeiri