Как мы можем узнать, что координаты карты находятся в текущем регионе или нет в текущем регионе? - PullRequest
5 голосов
/ 03 февраля 2012

Я работаю над приложением просмотра карты. Я хочу знать, как мы можем определить, что координаты находятся в моем текущем регионе (области карты, которая связана с экраном) или за ее пределами.

Заранее спасибо.

1 Ответ

4 голосов
/ 03 февраля 2012

У вас есть разные варианты.Вы можете увидеть этот пример кода от Apple: Регионы .Насколько я понимаю, проверьте положение устройства по положению антенны.

Или отслеживание положения устройства, и проверьте, находится ли он в пределах области, определенной Вами.Проверьте этот вопрос

Если вы найдете лучшее решение, пожалуйста, дайте мне знать.

РЕДАКТИРОВАТЬ:

Чтобы проверить, есликоордината видна на карте, попробуйте использовать это:

// Your coordinates - Lisbon for example
float lisbonLatitudeValue = 38.7069320;
float lisbonLongitudeValue = -9.1356321;

CLLocationCoordinate2D lisbonCoordinates = CLLocationCoordinate2DMake(lisbonLatitudeValue, lisbonLongitudeValue);

if (MKMapRectContainsPoint(mapView.visibleMapRect, MKMapPointForCoordinate(lisbonCoordinates)))
{
    // do something
    NSLog(@" - Lisbon is visible");
}
else {
    // do something
    NSLog(@" - Lisbon is not visible");
}

Надеюсь, это поможет

...