我有两个问题我无法解决关于平移手势的问题。
我使用平移手势控制num的变量
第一个问题是我结束平移手势的时候,
变量仍然增加或减少1或2,
无法获得我想要的数字
即使我覆盖了UIGestureRecognizerStateEnded
第二个问题是其中一个功能
检测平移手势的方向。
当我在屏幕上向上或向下拖动时,
数字保持在100~110位,然后继续移动,
表示平移手势在移动时会停止一点。
数字保持100~110然后继续工作,
任何人都可以帮我解决这些问题,
提前感谢任何评论。
这是下面的代码:
- (IBAction)panToControlNum:(UIPanGestureRecognizer *)sender
{
// CGPoint vel = [sender translationInView:self.view];
CGPoint vel = [sender velocityInView:self.view];
if (vel.x > 0)
{ // user dragged towards the right
vel.x = 0;
num++;
}
else if(vel.x < 0)
{ // user dragged towards the left
vel.x = 0;
num--;
}
else if(vel.y < 0)
{ // user dragged towards the up
vel.y = 0;
num++;
}
else if(vel.y > 0)
{ // user dragged towards the down
vel.y = 0;
num--;
}
switch (sender.state)
{
case UIGestureRecognizerStateEnded:
NSLog(@"pan gesture start ened , do nothing");
break;
default:
break;
}
}
@end
2015-08-27 00:54:24.297 TickTok[2657:1264792] pan gesture drag up, num is 160
2015-08-27 00:54:24.313 TickTok[2657:1264792] pan gesture drag up, num is 161
2015-08-27 00:54:24.330 TickTok[2657:1264792] pan gesture drag up, num is 162
2015-08-27 00:54:24.363 TickTok[2657:1264792] pan gesture drag up, num is 163
2015-08-27 00:54:24.380 TickTok[2657:1264792] pan gesture drag up, num is 164
2015-08-27 00:54:24.397 TickTok[2657:1264792] pan gesture drag up, num is 165
2015-08-27 00:54:24.413 TickTok[2657:1264792] pan gesture drag left, num is 164
2015-08-27 00:54:24.430 TickTok[2657:1264792] pan gesture drag left, num is 163
2015-08-27 00:54:24.463 TickTok[2657:1264792] pan gesture drag up, num is 164
2015-08-27 00:54:24.513 TickTok[2657:1264792] pan gesture drag left, num is 163
2015-08-27 00:54:24.530 TickTok[2657:1264792] pan gesture drag left, num is 162
2015-08-27 00:54:24.547 TickTok[2657:1264792] pan gesture drag up, num is 163
2015-08-27 00:54:24.563 TickTok[2657:1264792] pan gesture drag up, num is 164
2015-08-27 00:54:24.580 TickTok[2657:1264792] pan gesture drag up, num is 165
2015-08-27 00:54:24.597 TickTok[2657:1264792] pan gesture drag up, num is 166
2015-08-27 00:54:24.613 TickTok[2657:1264792] pan gesture drag up, num is 167
2015-08-27 00:54:24.630 TickTok[2657:1264792] pan gesture drag up, num is 168
2015-08-27 00:54:24.647 TickTok[2657:1264792] pan gesture drag up, num is 169
2015-08-27 00:54:24.663 TickTok[2657:1264792] pan gesture drag up, num is 170
2015-08-27 00:54:24.680 TickTok[2657:1264792] pan gesture drag left, num is 169
2015-08-27 00:54:24.697 TickTok[2657:1264792] pan gesture drag left, num is 168
2015-08-27 00:54:24.713 TickTok[2657:1264792] pan gesture drag up, num is 169
2015-08-27 00:54:24.730 TickTok[2657:1264792] pan gesture drag up, num is 170
2015-08-27 00:54:24.747 TickTok[2657:1264792] pan gesture drag left, num is 169
2015-08-27 00:54:24.764 TickTok[2657:1264792] pan gesture drag left, num is 168
2015-08-27 00:54:24.780 TickTok[2657:1264792] pan gesture drag left, num is 167
2015-08-27 00:54:24.797 TickTok[2657:1264792] pan gesture drag up, num is 168
2015-08-27 00:54:24.814 TickTok[2657:1264792] pan gesture drag up, num is 169
2015-08-27 00:54:24.847 TickTok[2657:1264792] pan gesture drag up, num is 170
2015-08-27 00:54:24.864 TickTok[2657:1264792] pan gesture drag left, num is 169
2015-08-27 00:54:24.880 TickTok[2657:1264792] pan gesture drag left, num is 168
2015-08-27 00:54:24.897 TickTok[2657:1264792] pan gesture drag left, num is 167
2015-08-27 00:54:24.914 TickTok[2657:1264792] pan gesture drag left, num is 166
2015-08-27 00:54:24.930 TickTok[2657:1264792] pan gesture drag left, num is 165
2015-08-27 00:54:24.947 TickTok[2657:1264792] pan gesture drag left, num is 164
2015-08-27 00:54:24.964 TickTok[2657:1264792] pan gesture drag up, num is 165
2015-08-27 00:54:24.997 TickTok[2657:1264792] pan gesture drag left, num is 164
2015-08-27 00:54:25.014 TickTok[2657:1264792] pan gesture drag left, num is 163