0

我花了很多时间在谷歌上搜索,找到了这个问题的很多不同答案——其中大多数都很老了。我尝试了几个——特别是这个(第一个答案是 containsPoint / containsTouch 类别方法): 如何在 cocos2d 中检测旋转精灵的触摸

当我实现它时,当我远离它们时,它错误地检测到精灵的触摸 - 最重要的是,我收到了许多警告,例如“不推荐使用 openGLView”。

接下来,我看到了这个帖子: http: //www.cocos2d-iphone.org/forum/topic/1420

并检查了 touchesTest 项目...在我的头文件中添加了“CCTargetedTouchDelegate”协议,然后添加了相关的实现方法(onEnter、onExit、containsTouchLocation 和 ccTouchBegan)...发现这只是不工作,因为精灵我使用的不是矩形...

我的按钮看起来有点类似于:http: //iphone.appstorm.net/wp-content/uploads/2010/04/ipconvert-1.jpg

旋转的矩形随着它们向下而变得更窄..

对此的任何帮助将不胜感激。

4

2 回答 2

0

我使用了 CGPathRef 并且也工作过。这是另一个类似于你的问题的线程。请参阅该解决方案。

于 2012-08-20T04:07:21.083 回答
0

您可以实现简单的算法来检测点是否在多边形内。在这种情况下,点将是您的触摸位置,多边形将是您的按钮电路。

或者你可以做一些更复杂的事情。您可以创建自己的菜单和自己的按钮。它将允许您创建这样的方法containsPoint:,以检查给定位置的像素是否具有零 alpha 值。

于 2012-08-21T15:21:48.693 回答