每当两个UIImageView重叠时,我如何检测?

Joh*_*ohn 6 iphone objective-c iphone-sdk-3.0 ios4

我有两个UIImageViews,其中一个是从左到右移动,另一个是触摸拖动.我希望NSLog在控制台上显示一条消息,只要imagetwo重叠imageone.我该怎么做呢?

Chr*_*nak 12

如果CGRectIntersectsRectUIImageViews共享相同的superview(更准确地说,具有相同的坐标空间),您可以使用该函数轻松测试矩形交集.

可能你需要添加如下代码:

  -(void) touchesEnded:(NSSet *) touches {
    if(CGRectIntersectsRect([imageViewA frame], [imageViewB frame])) {
      NSLog(@"Do something.");
    }
  }
Run Code Online (Sandbox Code Playgroud)

托管两个图像视图的UIView,或者拖动完成时调用的类似方法.