Xcode CGRect冲突有多个CGRect?

| 我创建了一个游戏,其中的地板由高度不同的多个图像组成。(所以地板不是平坦的) 而不是打开一百万个if语句: 如果(CGRectIntersectsRect(ball1.frame,floor1.frame)){ } 如果(CGRectIntersectsRect(ball1.frame,floor2.frame)){ } 如果(CGRectIntersectsRect(ball1.frame,floor3.frame)){ } 如果(CGRectIntersectsRect(ball1.frame,floor4.frame)){ } //等等... 。 有没有一种方法可以使用1 if语句检查冲突?所有的UIImageView地板块都被命名为“ floor1,floor2,floor3,floor4等等” 谢谢! 边注: 如果我想使用CGRectIntersect代码并旋转图像,我正在检查交叉点,因为它似乎仍然只检查图像帧的碰撞,因此无论旋转还是不碰撞在同一位置。我是否可以同时旋转框架以解决此问题,或者是否需要使用其他代码(如果是的话)?     
已邀请:
        尽管我不太了解您的问题,但我想可以简化一下。 代替命名瓦片floor1,floor2,...,您应该使用数组。 这样,您可以将if语句折叠为3个语句:
for (int i = 0; i < num_tiles; i++) {
    if (CGRectIntersectsRect(ball1.frame, floor[i].frame)) {
         put code here
    }
}
    
        绝对更改您的命名方案,如果有2个或3个以上的项目,则item1,item2,item3永远不是正确的选择。如有必要,只需说
NSMutableArray* floors = [NSMutableArray array];
[floors addObject:floor1];
[floors addObject:floor2];
[floors addObject:floor3];
... etc
没有特别提示的代码之前。     

要回复问题请先登录注册