我正在尝试添加这个3D动画,但它没有正确动画。动画期间有一个混蛋。
var currentTransform = CATransform3DIdentity
UIView.animate(withDuration: 0.3, animations: {
currentTransform = CATransform3DMakeScale(0.5, 0.5, 1)
currentTransform.m34 = 1.0 / -800
currentTransform = CATransform3DRotate(currentTransform, CGFloat(M_PI) * 50.0/180.0, 0, 1, 0)
self.containerView.layer.transform = currentTransform
})
可能是什么问题以及如何解决?
更新(答案):
这段代码很好用。唯一的问题是,containerView是我的主视图的直接子视图,这导致了混蛋。
解决方法是,我在主视图中添加了另一个视图,并使containerView成为新添加视图的子视图。
虽然我不确定为什么会这样。我认为,我在containerView上进行的转换也通过转换影响了主视图层。