Итак, я пытаюсь создать массив CGPoints разбив в NSString, как правило, выглядит следующим образом:Попытка построить многоугольник из NSString
31.241854,34.788867;31.241716,34.788744;31.242547,34.787585;31.242661,34.787719
Используя этот код:
- (NSMutableArray *)buildPolygon:(NSString *)polygon
{
NSMutableArray *stringArray = [[NSMutableArray alloc] init];
[stringArray addObject:[polygon componentsSeparatedByString:@";"]];
NSMutableArray *polygonArray = [[NSMutableArray alloc] init];
for (int i=0; i < polygonArray.count; i++)
{
NSArray *polygonStringArray = [[NSArray alloc] init];
polygonStringArray = [[stringArray objectAtIndex:i] componentsSeparatedByString:@","];
CGFloat xCord = [[polygonStringArray objectAtIndex:0] floatValue];
CGFloat yCord = [[polygonStringArray objectAtIndex:1] floatValue];
CGPoint point = CGPointMake(xCord, yCord);
[polygonArray addObject:[NSValue valueWithCGPoint:point]];
}
NSLog(@"return polygonArray: %@", polygonArray);
return polygonArray;
}
Но в конечном итоге я получаю пустой массив. Что я делаю неправильно?
Вы проверили все промежуточные этапы, т.е. что ранее массивы являются действительными и то, что вы ожидаете? Например, что такое '[stringArray objectAtIndex: 1]'? (Подсказка: вы только положили туда один объект.) Каковы возможные значения 'i'? –
Перед тем как 'если' я был журнал, а сюжет был:. ( ( "31.241854,34.788867", "31.241716,34.788744", "31.242547,34.787585", "31.242661,34.787719" ) Среднее это было нормально, но «polygonArray» пуст. –