我创建了一个包含 16 个 CG 点的数组,它们代表游戏板上的 16 个位置。这就是我设置数组的方式CGPoint cgpointarray[16];
我想创建一个for循环以循环遍历数组中的每个项目并检查触摸是否在位置的x距离内(我将位置作为CGPoint。我没有对xcode或objective c有很多经验。我知道python等价物是
for (i in cgpointarray){
//Stuff to do
}
我将如何做到这一点?谢谢
我创建了一个包含 16 个 CG 点的数组,它们代表游戏板上的 16 个位置。这就是我设置数组的方式CGPoint cgpointarray[16];
我想创建一个for循环以循环遍历数组中的每个项目并检查触摸是否在位置的x距离内(我将位置作为CGPoint。我没有对xcode或objective c有很多经验。我知道python等价物是
for (i in cgpointarray){
//Stuff to do
}
我将如何做到这一点?谢谢
for (int i = 0; i < 16; i++){
CGPoint p = cgpointarray[i];
//do something
}
或者如果你想使用 NSArray 类:
NSMutableArray *points = [NSMutableArray array];
[points addObject:[ NSValue valueWithCGPoint:CGPointMake(1,2)]];
for(NSValue *v in points) {
CGPoint p = v.CGPointValue;
//do something
}
(未在 XCode 中测试)
这应该这样做:
for (NSUInteger i=0; i < sizeof(cgpointarray)/sizeof(CGPoint); i++) {
CGPoint point = cgpointarray[i];
// Do stuff with point
}
我通常会选择上面的 NSValue 方法,但有时您正在使用无法更改输出的 API。@Andrews 方法很酷,但我更喜欢 .count 的简单性:
NSArray* arrayOfStructyThings = [someAPI giveMeAnNSArrayOfStructs];
for (NSUInteger i = 0; i < arrayOfStructyThings.count; ++i) {
SomeOldStruct tr = arrayOfStructyThings[i];
.... do your worst here ...
}