【问题标题】:iPhone : How can I move image on other image?iPhone:如何在其他图像上移动图像?
【发布时间】:2023-04-09 23:34:01
【问题描述】:

我想在其他图片上添加小剪贴画。

我知道我可以通过在背景 imageView 上添加其他 imageView 来做到这一点。

但我想在图像上的剪贴画上移动(拖动)。

是否也可以缩放剪贴画图像,例如放大或缩小?怎么样?

我该怎么做?

【问题讨论】:

  • 您是否甚至费心寻找解决方案? Stackoverflow 和互联网上都有很多解决方案。 -1
  • 我得到了缩放的解决方案,但无法找到拖动!!! :(
  • 看看苹果的 MoveMe 示例代码 - 这正是你想要的。

标签: iphone objective-c cocoa-touch


【解决方案1】:

看看Gesture Recognizers:Apple 提供了许多“标准”手势,这些手势非常易于实现。

这里的要点是,您可以将所需的手势识别器应用于剪贴画图像视图,以提供拖动、调整大小等功能。

【讨论】:

    【解决方案2】:

    UIPanGestureRecognizer 添加到要拖动的 ImageView 中:

    UIGestureRecognizer *panGesture = [[UIPanGestureRecognizer alloc] initWithTarget:imageView                                                                                   action:@selector(pan:)];
    [imageView addGestureRecognizer:panGesture];
    [panGesture release];
    

    然后,用这样的方式实现pan 方法:

    - (void)pan:(UIPanGestureRecognizer *)recognizer
    {
        if (recognizer.state == UIGestureRecognizerStateChanged) {
        CGPoint translation = [recognizer translationInView:self.superview];
        CGRect currentFrame = self.frame; 
        currentFrame.origin.x = self.frame.origin.x + translation.x;
        currentFrame.origin.y = self.frame.origin.y + translation.y;
        self.frame = currentFrame;
        [recognizer setTranslation:CGPointZero inView:self.superview];
    }
    }
    

    要缩放 ImageView,您可以添加 UIPinchGestureRecognizer 并根据需要缩放 imageView。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-03-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-29
      • 2018-03-01
      • 2013-06-28
      相关资源
      最近更新 更多