如何将 UICollectionView 单元格动画化为 Swift 的圆圈?

How to animate a UICollectionView Cell Become a circle With Swift?

当用户选择一个单元格时,我希望该单元格从正方形变为圆形。我正在使用这段代码,但它没有动画,为什么?

注:代码在swift.

cell.layer.cornerRadius = 7
    cell.clipsToBounds = true


    UIView.animateWithDuration(0.5, animations: {
        cell.layer.cornerRadius = self.cell.frame.height / 2
        cell.clipsToBounds = true
    })

在单元格的 contentView 中的某些视图上试试这个

let corner = self.aView.frame.size.width/2

let animation = CABasicAnimation(keyPath: "cornerRadius")
animation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionLinear)
animation.fromValue = 0
animation.toValue = corner
animation.duration = 1.0

self.aView.layer.cornerRadius = corner
self.aView.layer.addAnimation(animation, forKey: "cornerRadius")