我在我的 AppDelegate 中启用了多点触控。在我的游戏场景 InputLayer 中,我添加了一个 CCMenu,其中一些 CCMenuItemSprite 用作按钮,一个 SneakyJostic 作为控制器。在我的输入层中,我启用了触摸,以这种方式符合“标准触摸委托”协议,因为我希望能够评估 CCMenu 和 SneakyJoystic 控制器之外的一些用户触摸。
当用户开始触摸 SneakyJoystick 或 CCMenu 类实例区域之外的屏幕时,当用户的手指位置到达菜单或游戏实例上方时,实例不会检测到触摸,而是保持在 touchMoved(和/或然后是场景层的 touchEnded) 方法。
有没有办法防止这种情况?我的意思是,我怎样才能让菜单或游戏实例来控制外部开始的触摸?
阅读Cocos2d 文档,似乎 CCMenu 已经符合多点触控协议,因此我应该能够提高其优先级。但我害怕搞砸这个。我试图更改图层的优先级,但它崩溃了。
有什么建议么?
编辑:您可以在我在各种书籍中找到的各种示例项目中看到我所描述的内容。基本上,当有人使用“SneakyJostic”或在图层上添加“CCMenu”时(在任何项目中),如果您从对象外部开始触摸并移动手指 util 触摸对象,它不会检测到它。如何在不让我的应用程序崩溃的情况下解决此问题?