ios - 如何使用 UIPanGestureRecognizer move 2 个或更多 UIImageViews

标签 ios uiimageview move pan uipangesturerecognizer

在解释如何使用 UIPanGestureRecognizer move UIImageView 时,该站点非常有帮助,但我有一个程序需要 move (即平移)多个 UIImageView,我一生都可以找一个如何做到这一点的例子。

我知道 UIPanGestureRecognizer 已分配给 UIView,但我无法在 UIView 中平移任何 UIImageView,我只知道使用 UIView 平移一个 UIImageView 的代码,如下面的代码所示。

这是我用过的代码。

- (void)viewDidLoad {
UIPanGestureRecognizer *panRecognizer = [[UIPanGestureRecognizer alloc]initWithTarget:self action:@selector(move:)];
[panRecognizer setMinimumNumberOfTouches:1];
[panRecognizer setMaximumNumberOfTouches:1];
[_canvas addGestureRecognizer:panRecognizer];

[super viewDidLoad]; }


-(void)move:(id)sender {
CGPoint translatedPoint = [(UIPanGestureRecognizer*)sender translationInView:_canvas];

if([(UIPanGestureRecognizer*)sender state] == UIGestureRecognizerStateBegan) {
    _firstX = [photoImage center].x;
    _firstY = [photoImage center].y;
}

translatedPoint = CGPointMake(_firstX+translatedPoint.x, _firstY+translatedPoint.y);
[photoImage setCenter:translatedPoint]; }

我可以平移一个名为 photoImage 的 UIImageView,但知道平移多个 UIImageView 的代码会是什么样子。

预先感谢您的帮助。

最佳答案

您应该将手势识别器添加到所有图像而不是 _canvas。 并且还为这些 View 将 userInteractionEnabled 设置为 YES

[imageView setUserInteractionEnabled:YES];
[imageView addGestureRecognizer:panRecognizer];

关于ios - 如何使用 UIPanGestureRecognizer move 2 个或更多 UIImageViews,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8212792/

相关文章:

CSS 只对第一行应用边距

c++ - 唯一_Ptr : Attemting To Reference A Deleted Function

带有 Firebase 主题消息的 iOS 推送通知未发送到设备

Objective-C:指向 UITextField 的弱指针-> UITextField 不出现

ipad - AFNetworking 内存分配不断上升

ios - 如何正确使用标识符属性?

swift - 如何将相机或图库拍摄的图像添加到按钮?

javascript - 使用 JQuery 获取输入类型文件中的文件并 move 它

ios - 动态更改导航栏项目 - Swift

ios - 选择标记时 Google-Maps-iOS-SDK 崩溃