Objective c 如何将一个项目拖放到另一个项目上

Objective c 如何将一个项目拖放到另一个项目上,objective-c,xcode,drag-and-drop,uigesturerecognizer,Objective C,Xcode,Drag And Drop,Uigesturerecognizer,我正在尝试创建一个小游戏,但在拖放对象时遇到了一个问题:我在两个按钮上使用UIPangestureRecognitor。我想让按钮2在按钮1和按钮2重叠时高亮显示。我假设它应该发生在UIgestureRecognitzerStateStart中,所以我这样写: //This code to make button1 move CGPoint translation = [recognizer translationInView:self.view]; recognizer.view.center

我正在尝试创建一个小游戏,但在拖放对象时遇到了一个问题:我在两个按钮上使用UIPangestureRecognitor。我想让按钮2在按钮1和按钮2重叠时高亮显示。我假设它应该发生在UIgestureRecognitzerStateStart中,所以我这样写:

//This code to make button1 move
CGPoint translation = [recognizer translationInView:self.view];
recognizer.view.center = CGPointMake(recognizer.view.center.x + translation.x, 
                                     recognizer.view.center.y + translation.y);
[recognizer setTranslation:CGPointMake(0, 0) inView:self.view];

//This code to handle what happens when button 1 is dragged around
if (recognizer.state == UIGestureRecognizerStateBegan) {
    //And this code to handle what happens when button1 and button2 overlap
    if (CGRectContainsPoint([button2 frame], translation)) {
        button2.highlighted = YES;
    }
}
问题似乎来自if(CGRectContainsPoint([button2 frame],translation])语句。有人能帮忙吗