Xcodeで画像の回転を実装する

Xcodeで画像を回転させるためには、UIGestureRecognizerのひとつであるUIRotationGestureRecognizerを使用します。

viewDidLoadで、回転させたいUIViewにUIRotationGestureRecognizerを設定します。

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view.

    //rotation recognizer設定
    UIRotationGestureRecognizer *rotationGestureRecognizer = [[UIRotationGestureRecognizer alloc] initWithTarget:self action:@selector(rotationView:)];
    [_imageView addGestureRecognizer:rotationGestureRecognizer];
}

ローテーションジェスチャーを行った場合に呼び出されるactionを@selectorで設定します。
今回はrotationViewという名前にしました。

-(void)rotationView:(UIRotationGestureRecognizer *)sender
{
    //回転角度を取得
    CGFloat angle;
    angle = [sender rotation];

    //アフィン変換を適用
    CGAffineTransform transform = CGAffineTransformMakeRotation(angle);
    _imageView.transform = transform;
}

UIRotationGestureRecognizerで取得した角度を_imageViewに反映させます。

参考サイト
2011-09-26 [XCODE]ローテーションジェスチャーを簡単に実装する

コメント 停止中