使用以下内容翻转视图:
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;
}
问题是在翻转视图后,旋转的方向也是如此。任何解决方案如何解决这个问题?
编辑:我当前的解决方案是使用布尔值并取消handleRotate方法中的recognizer.rotation值。但我仍在寻找技术解决方案。
答案 0 :(得分:1)
您试试self.transform.a * recognizer.rotation
吗?
如果我正确理解了AffineTransform,则X缩放存储在a
。
CGAffineTransform Reference寻找CGAffineTransformMakeScale
和CGAffineTransformMake