我们怎么知道地图坐标在当前区域中是否处于当前区域?

时间:2012-02-03 09:09:48

标签: iphone xcode map region coordinate-systems

我正在制作地图视图应用程序。我想知道我们如何识别坐标位于我当前区域(与屏幕绑定的地图区域)或其外部。

提前致谢。

1 个答案:

答案 0 :(得分:4)

您有不同的选择。您可以在apple:Regions中看到此示例代码。据我所知,请按天线的位置检查设备位置。

或跟踪设备位置,并检查是否在您定义的区域内。请检查此question

如果您找到更好的解决方案,请告诉我。

修改

要检查地图中的坐标是否可见,请尝试使用:

// 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");
}

希望有所帮助