【发布时间】:2014-02-02 21:56:58
【问题描述】:
我目前正在开发一个应用程序,但在注释性能方面遇到了障碍。
目前,我有这个代码:
-(void) getStationsWithRadius:(float)distance //distanceInMetres
{
distance = (distance/1000.0f);
CLLocation *loc = [[CLLocation alloc] initWithLatitude:[mkMapView centerCoordinate].latitude longitude:[mkMapView centerCoordinate].longitude];
///....Network stuff....
}
-(void)mapView:(MKMapView *)mapView regionDidChangeAnimated:(BOOL)animated
{
MKMapRect mRect = mapView.visibleMapRect;
MKMapPoint eastMapPoint = MKMapPointMake(MKMapRectGetMinX(mRect), MKMapRectGetMidY(mRect));
MKMapPoint westMapPoint = MKMapPointMake(MKMapRectGetMaxX(mRect), MKMapRectGetMidY(mRect));
zoomDistance = MKMetersBetweenMapPoints(eastMapPoint, westMapPoint); //In Meters
[self getAnnotationsWithRadius:zoomDistance];
//etc.....
简而言之,每次用户更改地图上的区域时,我希望应用程序根据MKMapView 坐标的中心和缩放距离(半径)查询服务器以获取注释。
这显然对服务器造成了很大的负担,因为即使地图移动的最轻微变化也会导致应用程序请求注释。
有没有办法确定用户是否已经为他们当前所在的地图视图加载了注释?
【问题讨论】:
标签: ios objective-c mkmapview