【发布时间】:2012-09-07 11:23:10
【问题描述】:
我找不到有关如何正确设置 iOS 手势识别器的教程。 我需要检测上下滑动,以及它们的回调。
任何帮助,不胜感激。谢谢。
【问题讨论】:
标签: cocos2d-iphone box2d box2d-iphone
我找不到有关如何正确设置 iOS 手势识别器的教程。 我需要检测上下滑动,以及它们的回调。
任何帮助,不胜感激。谢谢。
【问题讨论】:
标签: cocos2d-iphone box2d box2d-iphone
您需要两个识别器,一个用于向上滑动,另一个用于向下滑动:
UISwipeGestureRecognizer* swipeUpGestureRecognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipeUpFrom:)];
swipeUpGestureRecognizer.direction = UISwipeGestureRecognizerDirectionUp;
对于处理程序:
- (void)handleSwipeUpFrom:(UIGestureRecognizer*)recognizer {
}
最后,将它添加到视图中:
[view addGestureRecognizer:swipeUpGestureRecognizer];
其他方向也一样(只需将所有Ups 更改为Downs)。
【讨论】:
[UIApplication sharedApplication].delegate.window;既然你说你没有视图,我想放置这段代码的地方是你的 appDidFinishLaunching...通常的地方是视图控制器内的viewDidLoad...
[[CCDirector sharedDirector] view] 或self 的思路,但这也不起作用。
这在 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...")
}
}
【讨论】: