didSelectRowAtIndexPath,带有包含部分的tableView

时间:2016-07-02 12:11:20

标签: ios swift

我有一个带有几个部分的tableView,每个部分只包含一个单元格(这样做是为了在每个单元格之间创建一个gab)。我正在尝试为我的单元格选择时创建自定义选择视图。 当我选择一行时,自定义选择视图将被添加到多个单元格中。我知道问题是因为细胞正在重复使用。解决这个问题的最佳解决方案是什么?

这是我的代码。

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
        if let myCell = tableView.cellForRowAtIndexPath(indexPath) as? PredefinedServicesCell{
            let selectionView = UIView()
            selectionView.backgroundColor = UIColor(hex: 0x3399CC).colorWithAlphaComponent(0.2)
            selectionView.layer.cornerRadius = (myCell.containerView.layer.cornerRadius)
            selectionView.frame = (myCell.containerView.frame)
            myCell.containerView.addSubview(selectionView)
        }
    }

1 个答案:

答案 0 :(得分:1)

您可以在CustomCell类

中使用以下方法隐藏或显示自定义选定视图
override func setSelected(selected: Bool, animated: Bool) {
    super.setSelected(selected, animated: animated)
    self.customSelectedView.hidden = !selected
}