如何禁用触摸检测?

19 iphone objective-c cocos2d-iphone

如何在运行的动作中禁用触摸检测,因为如果玩家在动作中单击并单击,我不希望角色像超人一样在天空中飞行,如果角色不断点击,角色将永远不会降落.我发现方法"isDone",是否与此方法有关?玩家点击 - >动作(不能在动作中点击) - >动作完成 - >再次点击.....这就是我想要的〜

Bir*_*chi 48

这是您问题的最佳答案:

[[UIApplication sharedApplication] beginIgnoringInteractionEvents];

[[UIApplication sharedApplication] endIgnoringInteractionEvents];
Run Code Online (Sandbox Code Playgroud)

  • +1对于反直觉,但令人敬畏的工作解决方案. (3认同)

los*_*sit 45

在视图中禁用用户交互,直到操作完成,然后再次启用它.

要禁用触摸

[self.view setUserInteractionEnabled:NO];
Run Code Online (Sandbox Code Playgroud)

启用触控功能

[self.view setUserInteractionEnabled:YES];
Run Code Online (Sandbox Code Playgroud)

请尝试并在下次更简洁地了解您的需求.


Dav*_*ana 0

您始终可以在要“禁用”点击输入的区域上方放置一个透明的 UIView,让它监听点击,并让它忽略它们。当您想要再次监听输入时,删除 UIView(或隐藏它)。