0

これを使用してビューを反転します。

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 メソッドの認識機能の値を無効にしています。しかし、私はまだ技術的な解決策を探しています。

4

1 に答える 1

1

試しましたself.transform.a * recognizer.rotationか?
AffineTransform を正しく理解していれば、X スケーリングは に保存されaます。

CGAffineTransformCGAffineTransformMakeScaleリファレンス_CGAffineTransformMake

于 2012-12-02T17:18:29.567 に答える