首页 > 解决方案 > Swift - 通过 UIRotationGestureRecognizer 旋转多个视图

问题描述

我正在尝试这样做,以便当您旋转一个视图时UIRotationGestureRecognizer,我需要旋转的所有视图也将旋转。

问题似乎在于设置 my gesture.rotation = 0,当前方法仅允许数组中的第一项能够旋转,而其余的则不能。

Apple 文档建议缓存旋转并从那里使用它,但是如果不出现奇怪的错误,我无法正确执行此操作。

有谁知道我该如何解决这个问题,以便我需要旋转的所有视图都将在旋转一个视图时旋转?也许通过正确缓存旋转?

@objc func didRotate(_ sender: UIRotationGestureRecognizer) {
        
        let rotation = sender.rotation
        
        self.transform = self.transform.rotated(by: rotation)
        
        for viewToRotate in rotatingViews {
            viewToRotate.didRotate(sender)
        }
        
        sender.rotation = 0.0
    }

标签: iosswiftrotationuikitswift5

解决方案


推荐阅读