如何使用 UIView 实现 3D 效果 - swift

How to achieve a 3D effect with UIView - swift

我想实现与附图相同的效果。如何以特定角度放置视图?我尝试使用 UIBezierPath 但没有成功。

您可以使用 CATransform3DConcat Apple doc

view.layer.transform = CATransform3DConcat(view.layer.transform, CATransform3DMakeRotation(.pi/4, .zero, .zero, .zero))

您可以将 CATransform3DRotate 与管理深度的 m34 属性 一起使用。只要确保你 .

override func viewDidLoad() {
    super.viewDidLoad()
    
    var transform = CATransform3DIdentity
    transform.m34 = -1.0 / 500.0
    transform = CATransform3DRotate(transform, 15 * .pi / 180, 1, 0, 0)
         
    cardView.backgroundColor = .systemBlue
    cardView.layer.cornerRadius = 8
    cardView.layer.transform = transform
}

结果: