将UITouch与SKNode匹配,并在触摸结束时将消息称为SKNode

时间:2014-08-27 14:08:47

标签: objective-c sprite-kit

我有多个SKNodes。当触摸一个时,我将触摸“连接”到触摸的节点。该触摸的任何移动都应该仅影响该节点,即使它移动到节点之外。最重要的是,我想在触摸结束或取消时通知节点。

我是否可以这样做,而不必每次触摸时都迭代我的所有节点,以便找出它连接到哪个节点?我尝试使用NSMutableDictionary,将UITouch作为键,将SKNode作为键的对象,但这不起作用,因为无法复制UITouch。

1 个答案:

答案 0 :(得分:0)

以下是我提出的解决方案: 我创建了一个继承自SKNode的类。这个类有一个接受UITouch的方法,以及一个应该在Scene的update方法中调用的更新方法。更新方法检查连接的触摸的相位并做出相应的反应。