Координаты широты и долготы MKMapView

Сейчас я работаю с 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;
}
6
задан dpalmajr 20 March 2012 в 16:06
поделиться