在iPhone mapkit中成功找到用户位置时是否会触发事件?
我想在当前位置引脚放到地图上时调用Web服务。
答案 0 :(得分:3)
如果您有MKMapView
本身显示用户的位置(以编程方式使用“mapView.showsUserLocation = YES;
”或IB检查“显示用户位置”),则地图视图将调用{{ 1}}引脚掉落时您可以使用:
viewForAnnotation
返回nil告诉地图视图使用其默认引脚作为用户位置(带动画的蓝点)。
不要忘记将控制器设置为- (MKAnnotationView *)mapView:(MKMapView *)aMapView viewForAnnotation:(id <MKAnnotation>)annotation
{
if ([annotation isKindOfClass:MKUserLocation.class]) {
// Call web service here
return nil;
}
}
。
答案 1 :(得分:1)
您需要创建CLLocationManger对象并调用startUpdatingLocation
方法。找到并更新位置后,CLLocationMangerDelegate方法
- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation
将自动调用。您可以重新实现此方法并从此处调用您的Web服务。