我最近asked a question关于子视图中的碰撞检测,有一个完美的答案。我已经到了应用程序碰撞的最后一点,但我遇到了一个新问题。先进的方式使用UIView convertRect方法多次检测CGRectIntersectsRect
使用convertRect很好,从子视图获取CGRect。我需要它稍微复杂一些,因为它不是完全需要检测的矩形。
我在XCode上创建了一个名为TileViewController的抽象类。在其他属性中,它有一个IBOutlet UIView * detectionView; 我现在有多个继承自TileViewController的类,每个类都有多个嵌套在我使用Interface Builder创建的detectionView中的视图。
想法是一个对象可能是某种形状或大小,我已经编程地将这些“平铺”检测点放置在每个对象的底部中心。用户可以选择一个项目并与之交互,在这种情况下移动它。
现在该方法本身在一定程度上工作,但我不认为它正在处理嵌套值,因为检测关闭。
此方法的简化版本的工作原理 - 在检测视图本身上使用CGRectIntersectsRect,所以我想知道如果我循环并检查正确的意见?
我不确定它是否在相同的视图进行比较,但我怀疑是这样,我在一点修改了代码,而不是比较self.view中的值我将viewController.detectView的UIViews交互式的View.detectView但结果是一样的。
它操纵这样子视图改变颜色,但他们改变颜色时,他们甚至不接触,而在这个时候摸错UIviews有变色