Сейчас я работаю с MKMapView и пытаюсь вывести данные на экран.Для этого я решил исправить небольшой MapDataProvider, который выдает массив объектов MKAnnotation, каждый из которых содержит координату со случайными значениями широты и долготы.
Я уже убедился, что мой MKMapView подключен к моему контроллеру, и массив объектов MKAnnotation правильно поступает из моего MapDataProvider... но по какой-то причине... когда я пытаюсь указать координаты в Северной Америке (например, .48, -84).. ничего не отображается в MKMapView.
Поэкспериментировав, я обнаружил, что эта проблема возникает при любом значении долготы меньше 0.
Я пытался проверить значение координат для каждого объекта MKAnnotation в моей коллекции, но CLLocation2DIsValue() продолжает возвращать false.
Вопрос:
Какой диапазон значений широты и долготы я могу ввести для CLLocationCoordinate2D, чтобы мои контакты отображались в Северной Америке?
Чтобы дать немного больше контекста, вот метод, вызываемый в MapDataProvider:
+(NSArray *) getMockMapData{
NSMutableArray *tempMapData = [[NSMutableArray alloc] initWithCapacity:15];
for (int i=0; i< 15; i++) {
double latitude = rand()%20 +50;
double longitude = -107 + rand()%10;
CLLocationCoordinate2D coord = CLLocationCoordinate2DMake(latitude, longitude);
if(CLLocationCoordinate2DIsValid(coord) == NO)
continue;
[tempMapData addObject:[MockMapData
dataForValues:[@"Item " stringByAppendingString:[[NSNumber numberWithInt:i] description]]
subTitle:[@"Item " stringByAppendingString:[[NSNumber numberWithInt:i]description]]
coordinate:coord]];
}
return tempMapData;
}