【问题标题】:Proper Swipe gesture recognizer iOS正确的滑动手势识别器 iOS
【发布时间】:2012-09-07 11:23:10
【问题描述】:

我找不到有关如何正确设置 iOS 手势识别器的教程。 我需要检测上下滑动,以及它们的回调。

任何帮助,不胜感激。谢谢。

【问题讨论】:

    标签: cocos2d-iphone box2d box2d-iphone


    【解决方案1】:

    您需要两个识别器,一个用于向上滑动,另一个用于向下滑动:

    UISwipeGestureRecognizer* swipeUpGestureRecognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipeUpFrom:)];
    swipeUpGestureRecognizer.direction = UISwipeGestureRecognizerDirectionUp;
    

    对于处理程序:

    - (void)handleSwipeUpFrom:(UIGestureRecognizer*)recognizer {
    
    }
    

    最后,将它添加到视图中:

    [view addGestureRecognizer:swipeUpGestureRecognizer];
    

    其他方向也一样(只需将所有Ups 更改为Downs)。

    【讨论】:

    • 你说得对:我太专注于认为滑动识别器的重点是有一个方向识别器......我添加了这一步......
    • 我从不设置视图.. 我可以将什么设置为默认视图或当前视图?我也要把所有这些都放在 init 方法中吗?
    • (我希望它应用到整个 iPhone 屏幕)
    • 然后添加到:[UIApplication sharedApplication].delegate.window;既然你说你没有视图,我想放置这段代码的地方是你的 appDidFinishLaunching...通常的地方是视图控制器内的viewDidLoad...
    • 不,那个视图不起作用。我想更多的是沿着[[CCDirector sharedDirector] view] 或self 的思路,但这也不起作用。
    【解决方案2】:

    这在 Xcode 7.3 中对我有用。 , 斯威夫特 2.2。

    import UIKit
    
    class Viewcontroller: UIViewController
    {
        override func viewDidLoad()
        {
            super.viewDidLoad()
            createAndAddSwipeGesture()
        }
    
        private func createAndAddSwipeGesture()
        {
            let swipeGesture = UISwipeGestureRecognizer(target: self, action: #selector(Viewcontroller.handleSwipeLeft(_:)))
            swipeGesture.direction = UISwipeGestureRecognizerDirection.Left
            view.addGestureRecognizer(swipeGesture)
        }
    
        @IBAction func handleSwipeLeft(recognizer:UIGestureRecognizer)
        {
            print(" Handle swipe left...")
    
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-07-20
      • 1970-01-01
      • 1970-01-01
      • 2016-08-04
      • 1970-01-01
      • 2015-07-23
      • 1970-01-01
      相关资源
      最近更新 更多