mac*_*bie 4 iphone objective-c
我有一个Objective-C方法,它使用图像中的一些x和y值:image.center.x和image.center.y.我想在每次调用此方法时将它们存储起来,所以我希望使用数组.
如何才能做到这一点?我怀疑使用NSMutableArray?
Bra*_*son 12
我建议将这些点存储在NSArray中,使用NSValue包装:
NSMutableArray *arrayOfPoints = [[NSMutableArray alloc] init];
[arrayOfPoints addObject:[NSValue valueWithCGPoint:image.center]];
// Do something with the array
[arrayOfPoints release];
Run Code Online (Sandbox Code Playgroud)
这假定这image.center是一个CGPoint结构(如果没有,你可以使用它CGPointMake()).
要提取CGPoint,只需使用
[[arrayOfPoints objectAtIndex:0] CGPointValue];
Run Code Online (Sandbox Code Playgroud)
C数组是Objective C的适当子集,并且比使用Cocoa Foundation类生成更快的代码并且通常使用更少的内存.你可以添加:
CGPoint myPoints[MAX_NUMBER_OF_POINTS];
Run Code Online (Sandbox Code Playgroud)
你的实例变量; 并保存坐标:
myPoints[i] = image.center;
Run Code Online (Sandbox Code Playgroud)