无法从NSValue的mutableArray中提取CGPoint值

时间:2012-07-22 23:41:01

标签: objective-c xcode nsmutablearray cgpoint nsvalue

我创建了一个CGM的NSMUtableArray,我通过子类化作为NSValue存储它们,但是我无法得到这些值。我在这里做了什么。

 CGPoint graphPoint;
    NSMutableArray *pointValues = [[NSMutableArray alloc] init];

    for( int x =0;x<5; x++)
    {
    NSDictionary* xValue = [NSDictionary dictionaryWithObject:[NSNumber numberWithInt:x] forKey:@"X"];
    graphPoint.x =x;
    graphPoint.y = [CalculatorBrain runProgram: self.graphingPoint usingVariableValues:xValue];

    [pointValues addObject:[NSValue valueWithCGPoint:graphPoint]];

}

我尝试使用它来获取值,但我只是返回

for( int x=0; x<5; x++) {
NSValue *val = [pointValues objectAtIndex:x];
CGPoint point = [val CGpointValue];
NSLog(@"Points = %@", point);
}

1 个答案:

答案 0 :(得分:4)

您无法使用CGPoint格式说明符打印%@,因为它不是对象。相反,请使用NSStringFromCGPoint()

NSLog(@"%@", NSStringFromCGPoint(myPoint));