Возникли небольшие проблемы с пониманием того, как реализовать более быструю скорость перетаскивания для кода, который я использую ниже (написанный @PaulSoltz), который позволяет перетаскивать объект по экрану.Я понимаю, что вы должны использовать метод velocityInView
из UIPanGestureRecognizer
, и я понимаю, что он возвращает вектор скорости x и вектор скорости y.Если скорость = расстояние во времени, то, например, velocityx = (x2 - x1) / time
, и я не уверен, как использовать эту формулу, чтобы получить то, что мне нужно.По сути, я просто хочу иметь возможность регулировать скорость своего движения, чтобы сделать его немного быстрее.Может быть, я слишком много думаю, но если бы кто-нибудь мог помочь мне понять это, это было бы оценено.Спасибо.
- (void)handlePanGesture:(UIPanGestureRecognizer *)gestureRecognizer {
UIView *myView = [gestureRecognizer view];
CGPoint translate = [gestureRecognizer translationInView:[myView superview]];
if ([gestureRecognizer state] == UIGestureRecognizerStateChanged || [gestureRecognizer state] == UIGestureRecognizerStateChanged) {
[myView setCenter:CGPointMake(myView.center.x + translate.x, myView.center.y + translate.y)];
[gestureRecognizer setTranslation:CGPointZero inView:[myView superview]];
}
}