我一直在研究 MKMapView 并尝试了解 MKMapViewDelegate 系统的工作原理。到目前为止,我没有运气在添加当前位置标记时调用 didAddAnnotationViews 。
我已将我的应用程序委托设置为实现 MKMapViewDelegate,我在 xib 中有一个 MapView 的出口,并将 MapView 的委托属性设置为 self,如应用程序委托实例中所示。我已经在应用程序委托中实现了 didAddAnnotationViews,我只需 NSLog 对其进行任何调用,如下所示。地图设置为显示当前位置,并在启动时添加蓝色图钉注释,但由于某种原因 didAddAnnotationViews 没有被命中。
- (void)mapView:(MKMapView *)mapView didAddAnnotationViews:(NSArray *)views{
NSLog(@"Annotation added!");
}
我可能错过了什么想法吗?
我在 BNR 中也遇到了同样的问题。这是我最终使用的:
// Tell MKMapView to zoom to current location when found
- (void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation
{
NSLog(@"didUpdateUserLocation just got called!");
MKCoordinateRegion region = MKCoordinateRegionMakeWithDistance([userLocation coordinate], 250, 250);
[mapView setRegion:region animated:YES];
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)