gpt4 book ai didi

ios - SKSpriteNode 子类和触摸事件

转载 作者:可可西里 更新时间:2023-11-01 06:19:41 26 4
gpt4 key购买 nike

我不明白为什么如果我子类化一个实现了 UIResponder 协议(protocol)的 SKSpriteNode,与触摸相关的方法永远不会被调用。

例如,这是一个非常简单的类,我将其用作测试:

//INTERFACE ----------------
#import <SpriteKit/SpriteKit.h>

@interface TestClass : SKSpriteNode

@end

//IMPLEMENTATION -----------
#import "TestClass.h"

@implementation TestClass


- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
NSLog(@"oook");
}

- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event{}
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event{}
- (void)touchesCancelled:(NSSet *)touches withEvent:(UIEvent *)event{}

@end

如果我将此类的一个实例附加到场景中,触摸该对象……什么也不会发生。

我是不是忘记了什么?

最佳答案

我刚刚看到 SKNode 的参数 userInteractionEnabled 默认等于 NO。只需将其设置为 YES 即可使代码正常运行。

关于ios - SKSpriteNode 子类和触摸事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19099596/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com