我已经查看了这里和其他地方的无数问题,但终究无法弄清楚我做错了什么。
我正在尝试将 CGPoints 数组作为 NSValues 存储在 NSMutableArray 命名点中,就像在 iPhone 上一样:
NSValue *point = [NSValue valueWithCGPoint:firstTouch];
NSLog(@"NSValue *point = %@", point);
[points addObject:point];
NSLOG OUTPUT
NSValue *point = NSPoint: {120, 221}
从 CGPoint 到 NSValue 的转换一切顺利。但是,当我尝试检索该点时,我一无所获。
NSValue *getPoint = [points objectAtIndex:0];
CGPoint thePoint = [getPoint CGPointValue];
NSLog(@"Point = %@", NSStringFromCGPoint(thePoint));
NSLOG OUTPUT
Point = {0, 0}
点数应该相同,但我得到的结果为空。
出于测试目的,这是在 touchesBegan 方法中发生的。
有人知道我哪里出错了吗?提前致谢。
最佳答案
我从未将我的数组分配到内存中并对其进行初始化。我的点没有存储到数组中,因为不存在数组。
关于iphone - 在 NSMutableArray 中存储和检索 CGPoints,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2486270/