我有MKMapView
&我正在使用PinAnnotation
来绘制MKMapView
上的图钉。
我有一个包含latitude
&的本地数据库。成千上万个地点longitude
。我想在应用程序启动时将引脚绘制在MKMapView
上当前位置10 kms附近。
答案 0 :(得分:3)
我是按照以下方式完成的 -
1)首先找到了当前latitude
& longitude
使用delegate
MKMapView
(didUpdateUserLocation
)的distance <=10 Kms
方法{/ 1}}。
2)找到当前位置与KM中本地数据库中存储的位置的距离。
3)如果pin
,则绘制{{1}},否则不执行任何操作。
答案 1 :(得分:2)
这取决于你的数据库。一种简单的方法是计算10km的经度差(在赤道和北极附近不同)和10km的纬度差,然后在数据库中搜索maxLat和minLat以及maxLong和minLong之间的所有内容。这会给你一个矩形的项目,但它是一个开始。从那里你可以遍历每个结果,使其成为CLLocation并使用distanceFromLocation检查它是否在10公里以内。