Ios 在swift中正确获取UIView旋转角度

Ios 在swift中正确获取UIView旋转角度,ios,swift,uiview,Ios,Swift,Uiview,我能够旋转并获得旋转角度,但这不能满足我的需要。 我已经创建了视图和旋转按钮,如下所示。 我可以旋转90度,每次点击旋转按钮,如下所示 现在我想打印角度为0,90,180,270,360的视图的旋转角度应打印为0,然后与90,180,270相同,0必须打印以代替360..根据方向重复 下面是我用来创建的代码 @IBOutlet weak var myView: UIView! @IBAction func rotateBtn(_ sender: Any) { myView.tr

我能够旋转并获得旋转角度,但这不能满足我的需要。 我已经创建了视图和旋转按钮,如下所示。

我可以旋转90度,每次点击旋转按钮,如下所示

现在我想打印角度为0,90,180,270,360的视图的旋转角度应打印为0,然后与90,180,270相同,0必须打印以代替360..根据方向重复

下面是我用来创建的代码

    @IBOutlet weak var myView: UIView!
@IBAction func rotateBtn(_ sender: Any) {
    myView.transform = myView.transform.rotated(by: .pi/2)
     getRotateAngle()
}
func getRotateAngle(){
    //This is just to print rotation angle of a view
    let radians = atan2(myView.transform.b, myView.transform.a)
    let degrees = radians * 180 / .pi
    print("Degrees:: \(degrees)")
}
它在控制台中打印,就像在屏幕下面一样。


我怎样才能得到0度,90度,180度,270度,0度,90度,180度,270度,0度的视野?有人能推荐一下吗。提前感谢。

首先
轮换
你的
度数
,然后计算实际度数

func getRotateAngle() {
    let radians = atan2(myView.transform.b, myView.transform.a)
    var degrees = radians * 180 / .pi
    degrees.round()
    let realDegrees = degrees >= 0 ? abs(degrees) : 360 + degrees
    print("Degrees:: \(realDegrees)")
}

嗨,罗伯特,我在上述问题的延伸部分提到的那个些细节的要求上有了一些小的变化。请你看一下,给我一个有价值的答复。谢谢。@MIOSY这些细节不在你的问题中。这是另一个问题。将你的问题编辑为前置问题,如果你有其他问题,问新问题是的,我想保留单独的问题,但我的提问限制在statckoverflow中被超过了,我无法再写另一个问题。请您用所需代码内的saveTapped按钮操作块回复问题。提前谢谢。@MIOSY,你应该问新问题并接受对你有帮助的答案。是的,我将另一个问题作为robert发布,你的回答标记为“答案”。请看一下这个问题()。非常感谢。