【发布时间】:2011-08-04 06:15:54
【问题描述】:
在理解如何为我在下面使用的代码(由@PaulSoltz 编写)实现更快的拖动速度时遇到了一些麻烦,它允许您在屏幕上拖动对象。我意识到你必须使用UIPanGestureRecognizer 中的velocityInView 方法,我知道它返回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]];
}
}
【问题讨论】:
标签: iphone ios cocoa-touch core-graphics uigesturerecognizer