我正在研究UIView与图层绘制周期之间的关系。 因此,接下来可能是一个愚蠢的问题。 我试图更改图层的属性,例如位置,边界,框架,backgroundColor,不透明度和其他属性。
我测试了add(_:forKey :)和动画效果很好,但是当我尝试直接更改property的值时,我没想到屏幕上会出现任何动画。我期望的是,只需在屏幕上进行简单的更改即可,例如UIView的属性无需动画即可更改
现在,我非常困惑CALayer概念的区别和根本。
let instanceLayer = CustomCALayer()
@IBAction func adjustCoordinate() {
let position = CGPoint(x: 300, y: 300)
if instanceLayer.position == position {
instanceLayer.position = point!
//instanceLayer.position = CGPoint(x: 50, y: 50)
} else {
instanceLayer.position = position
}
}
@IBAction func adjustSize() {
let size = CGSize(width: 200, height: 200)
if instanceLayer.bounds.size == size {
instanceLayer.bounds.size = CGSize(width: 50, height: 50)
} else {
instanceLayer.bounds.size = size
}
}