旋转iPhone中触摸拖动对应的图像

Rotate the image corresponding to the touch drag in iPhone(旋转iPhone中触摸拖动对应的图像)
本文介绍了旋转iPhone中触摸拖动对应的图像的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想顺时针或逆时针旋转图像,对应于用户触摸拖动的速度.我认为这可以通过一些数学和逻辑来完成.用于此的代码示例是什么样的?

I want to rotate the image in clockwise or anticlockwise direction corresponding to the user touch drag with its speed. I think this can be done with some math and logic. What would a code sample for this look like?

推荐答案

如果你的目标是 iOS 3.2 或更高版本,你可以使用 UIRotationGestureRecognizer.代码看起来像这样:

If you're targeting iOS 3.2 or greater, you can use UIRotationGestureRecognizer. The code would look something like this:

在您的设置方法中(viewDidLoadinit 等):

In your setup method (viewDidLoad or init, etc,):

UIRotationGestureRecognizer *rotationGesture = 
  [[UIRotationGestureRecognizer alloc] initWithTarget:self
                                               action:@selector(handleRotate:)];
rotationGesture.delegate = self;
[myImageView addGestureRecognizer:rotationGesture];
[rotationGesture release];

事件处理程序:

- (void)handleRotate:(UIRotationGestureRecognizer *)recognizer {
  if(recognizer.state == UIGestureRecognizerStateBegan || 
     recognizer.state == UIGestureRecognizerStateChanged)
  {
    recognizer.view.transform = CGAffineTransformRotate(recognizer.view.transform, 
                                                        recognizer.rotation);
    [recognizer setRotation:0];
  }
}

我在 github 上有更多手势识别器示例(包括上面的那个).

I have some more examples of gesture recognizers (including the one above) on github.

这篇关于旋转iPhone中触摸拖动对应的图像的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Pushing UIViewController above UITabBar(将UIView控制器推送到UITabBar上方)
java.lang.IllegalStateException: SimpleTypeImpl should not be created for error type(异常:不应为错误类型创建SimpleTypeImpl)
Android IllegalArgumentException: The tag for fragment_XXX is invalid. Received: layout-sw600dp/fragment_XXX_0(Android IlLegalArgumentException:Fragment_XXX的标签无效。收到:Layout-sw600dp/Fragment_XXX_0)
iOS convert audio sample rate from 16 kHz to 8 kHz(IOS将音频采样率从16 kHz转换为8 kHz)
Enforcing an audio sampling rate in iOS(在iOS中强制音频采样率)
HTTPS request using volley(使用 volley 的 HTTPS 请求)