我使用以下方法为用户位置创建了自定义视图:
-(MKAnnotationView *)mapView:(MKMapView *)mV viewForAnnotation:(id <MKAnnotation>)annotation
{
if([annotation class]==[MKUserLocation class])
{
//my code to return the pin
}
else
{
//code for custom pin
}
在一些用户操作之后,我将mapShowsUserLocation更新为NO,用于mapview。然后我启动核心位置控制器,它使用不同的自定义引脚视图来跟踪用户位置。原始引脚会在某个时间消失,但稍后会在我拖动或捏合以放大地图时重新出现。虽然调试我看到它进入上面的if条件被调用,尽管setShowsUserLocation被设置为no。