我已经向按钮添加了一些目标。他们工作正常。但是在我的imageMoved ...方法中,如何确定触发了两个事件中的哪一个?这是我添加目标的地方:

    [button addTarget:self action:@selector(imageMoved:withEvent:) forControlEvents:UIControlEventTouchDragInside];
    [button addTarget:self action:@selector(imageMoved:withEvent:) forControlEvents:UIControlEventTouchDragExit];


我最近看到一个示例,其中该事件在imageMoved方法中进行了测试,如下所示:

if (event == UIControlEventTouchDragExit )


但这不会编译。我在网上找不到任何示例,也没有在《 UIControl类参考》中找到任何线索。

我要尝试执行的操作是存储按钮/图像的原始位置,以便如果用户未完成拖动到目标的操作,它将捕捉回到其来源。

感谢您提供任何帮助。

最佳答案

使用两种不同的方法

[button addTarget:self action:@selector(imageMoved:withDragInsideEvent:) forControlEvents:UIControlEventTouchDragInside];
[button addTarget:self action:@selector(imageMoved:withDragExitEvent:) forControlEvents:UIControlEventTouchDragExit];


并重用第三种方法中的常用功能。

10-08 07:48