正确的方法来突出uicollectionviewcell

时间:2015-05-03 18:25:08

标签: ios swift uicollectionview

我有一个uicollectionview,带有子类uicollectionviewcells。我想在触摸时更改单元格的颜色,然后在触摸释放时返回默认值。此外,如果我可以设置这种颜色变化的动画,那将是最佳的。我已经尝试实现didHighlightItemAtIndexPath方法并更改出列单元格的backgroundColor属性,但似乎没有任何更改。我能做到这一点的唯一方法是覆盖单元格的touchesBegan方法,但是不会调用didSelectItemAtIndexPath。

如果我使用didHighlightItemAtIndexPath,则会调用该方法,但由于某种原因,背景颜色不会更改。

触摸时我不知道UICollectionViewCell的标准方法是什么,但是有什么方法可以运行它吗?

1 个答案:

答案 0 :(得分:1)

您必须在cellForItemAtIndexPath中配置出列单元格的backgroundView:

    let backgroundView = UIView(frame: CGRectMake(0, 0, cell.contentView.frame.width, cell.contentView.frame.height))
    backgroundView.backgroundColor = .blueColor()
    cell.selectedBackgroundView = backgroundView