如何给skView添加一个手势?
我需要在游戏中添加几个滑动手势。 从我所知道的,这只能以编程的方式完成,不幸的是我从来没有用这种方式添加手势,我一直使用IB。 我知道我需要初始化一个手势识别器,使用initWithTarget:action:
我知道如何设置它的属性,我不知道如何使这个手势做的东西。 我认为这是通过行动参数@select器,但似乎永远不会被调用。 我做错了吗? 这是我所拥有的:
UISwipeGestureRecognizer *swipeRight = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(animateSwipeRightLeft)]; [self.view addGestureRecognizer:swipeRight];
并为select器我有:
-(void)animateSwipeRightLeft { //do stuff... }
所以这涉及到一些相关的问题:我正确地设置了这一点? 如果是这样,为什么我的select器不被调用? 如果我不能用IB来做这件事,怎么办?
另外,如果有帮助,我的手势在我的场景的initWithSize方法中设置。
您应该在SKScene
的didMoveToView
方法中添加手势识别器。
- (void)didMoveToView:(SKView *)view { UISwipeGestureRecognizer *swipeRight = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(animateSwipeRightLeft)]; [self.view addGestureRecognizer:swipeRight]; }
在init
方法中, self.view
是self.view