Ios UIRotationGestureRecognitor随CGAffineTransformMakeScale更改

Ios UIRotationGestureRecognitor随CGAffineTransformMakeScale更改,ios,uigesturerecognizer,cgaffinetransformscale,Ios,Uigesturerecognizer,Cgaffinetransformscale,使用以下方法翻转视图: self.transform = CGAffineTransformMakeScale(-1, 1); // self is an UIView 要旋转此视图,请执行以下操作: -(void)handleRotate:(UIRotationGestureRecognizer *)recognizer { recognizer.view.transform = CGAffineTransformRotate(recognizer.view.transform,

使用以下方法翻转视图:

self.transform = CGAffineTransformMakeScale(-1, 1);  // self is an UIView
要旋转此视图,请执行以下操作:

-(void)handleRotate:(UIRotationGestureRecognizer *)recognizer
{
    recognizer.view.transform = CGAffineTransformRotate(recognizer.view.transform, recognizer.rotation);
    recognizer.rotation = 0;
}
问题在于翻转视图后,旋转的方向也是如此。有什么解决办法可以解决这个问题吗


编辑:我当前的解决方案是使用布尔值,并在HandlerRotate方法中否定recognizer.rotation值。但我仍在寻找技术解决方案。

您是否尝试过
self.transform.a*recognizer.rotation

如果我正确理解仿射变换,则X缩放存储在
a

查找
cAffineTransformMakeScale
cAffineTransformMake