确定拖动点的距离

时间:2011-08-09 18:03:54

标签: iphone objective-c ipad

我有一个UIImageView,我正在尝试确定何时执行拖动,拖动距离原点的距离。我目前有这个:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
UITouch *touch = [touches anyObject];
CGPoint location = [touch locationInView:touch.view];

if(CGRectContainsPoint(myimage.frame, location) == 0){

}
else
{ //user didn't tap inside image}

图像本身不会移动,但是一个人可以抓住他们的手指,点击图像,然后拖动他们的手指。我只是想确定拖动距离。

1 个答案:

答案 0 :(得分:3)

如果您想计算距离,如果用户点按了您的图片,您需要记住touchesBegan中的点(存储在某处)。 然后在touchesMovedtouchesEnd中,您将能够获得当前点并计算到原始点的距离。

如果您需要与UIImageView来源保持距离,可以致电[touch locationInView:myImage];

我建议您使用UIGestureRecognizer课程,而不是自己处理。它们更容易实现。