Невозможно извлечь значения CGPoint из изменяемого массива NSValue
Я создал NSMUtableArray для CGpoints и сохранил их, создав подклассы как 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 ответ
Решение
Вы не можете распечатать CGPoint
с использованием %@
спецификатор формата, так как это не объект. Вместо этого используйте NSStringFromCGPoint()
:
NSLog(@"%@", NSStringFromCGPoint(myPoint));