【发布时间】:2012-05-02 16:05:11
【问题描述】:
例如,如果我们有 10 个矩形精灵,我们使用随机的宽度、高度、位置和 z-index 生成它们。现在方法
-(void) ccTouchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
被调用。我们如何知道点击了哪个精灵?我知道一些技术检查点击点是否在精灵矩形的范围内,但在上述情况下,如果矩形 A 在左上角的矩形 B 的顶部,以及当矩形 B 的左上角时怎么办?被点击,它可能是被点击的矩形A——点击点实际上在两个矩形内。
我们是否必须手动完成,甚至考虑 z-index...? (可能循环遍历从最高 z-index 到最低的所有精灵)。
如果精灵是一个三角形并且旋转呢? Cocos2d 中没有内置的方法可以处理吗?
(那是因为我前几天浏览了Core Graphics的示例代码……好像那样的话,会有两个点击事件,一个用于主视图,一个用于子视图,我们可以检查用户点击的是什么视图,不做任何计算)
【问题讨论】:
标签: ios cocos2d-iphone