【问题标题】:UIGestureRecognizer "lost focus"?UIGestureRecognizer“失去焦点”?
【发布时间】:2013-05-07 23:11:30
【问题描述】:

我试图弄清楚如何在 UIGestureRecognizer 检测到手势后,当它“失去焦点”(用户将手指从屏幕上抬起)时调用一个动作。 所以基本上,如果用户向上滑动手指,然后将手指从屏幕上移开,我如何才能检测到手指已抬起?

【问题讨论】:

    标签: iphone uigesturerecognizer


    【解决方案1】:

    您可以使用“状态”属性来检测用户结束滑动的时间。

    - (void)handleSwipeGesture:(UISwipeGestureRecognizer *)recognizer
    {
        if (recognizer.state == UIGestureRecognizerStateEnded)
        {
         //do something
        }
    }
    

    【讨论】:

    • 我实现了你的代码,但是 UIGestureRecognizerStateEnded 在识别手势后立即被调用,而不是在手指从屏幕上抬起后,有什么想法吗?
    • 滑动手势需要设置cancelsTouchesInView和delaysTouchesEnded为NO,并尝试实现 - (void)touchesEnded:(NSSet )touches withEvent:(UIEvent *)event { for(UITouch touch in touches) { if(touch.phase == UITouchPhaseEnded) { NSLog(@"touched"); } } }
    猜你喜欢
    • 2020-05-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多