You can make a global BOOL endDragging
and when your condition is met you just return
the touchesMoved
.
It works , I just tested it, you won't be able to move the image after the condition is met.
-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event
{
if(endDragging)
return;
//do stuff
}