关于iOS平移手势的问题

时间:2015-08-25 16:53:46

标签: ios uigesturerecognizer

我有两个问题我无法解决关于平移手势的问题。

我使用平移手势控制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

0 个答案:

没有答案
相关问题