我有一个 uicollectionview,带有子类 uicollectionviewcell。我想在触摸时更改单元格的颜色,然后在释放触摸时返回默认值。另外,如果我可以为这种颜色变化制作动画,那将是最佳选择。我已经尝试实现 didHighlightItemAtIndexPath 方法并更改出列单元格的 backgroundColor 属性,但似乎没有任何改变。我可以完成此操作的唯一方法是重写单元格的 touchesBegan 方法,但不会调用 didSelectItemAtIndexPath。
如果我使用 didHighlightItemAtIndexPath,该方法会被调用,但由于某种原因背景颜色没有改变。
我不知道 UICollectionViewCell 的标准方法是什么,但有什么方法可以运行它吗?
最佳答案
您必须在 cellForItemAtIndexPath 中配置出列单元格的背景 View :
let backgroundView = UIView(frame: CGRectMake(0, 0, cell.contentView.frame.width, cell.contentView.frame.height))
backgroundView.backgroundColor = .blueColor()
cell.selectedBackgroundView = backgroundView
关于ios - 突出显示 uicollectionviewcell 的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30017684/