Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/93.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 在这种情况下,将调用mapView:viewForAnnotation:?_Ios_Iphone_Annotations_Mkmapview_Mkmapviewdelegate - Fatal编程技术网

Ios 在这种情况下,将调用mapView:viewForAnnotation:?

Ios 在这种情况下,将调用mapView:viewForAnnotation:?,ios,iphone,annotations,mkmapview,mkmapviewdelegate,Ios,Iphone,Annotations,Mkmapview,Mkmapviewdelegate,现在我想在iOS应用程序的地图上添加一个静态pin注释 但我只想知道是否会调用委托方法mapView:viewForAnnotation: 在苹果的文档中,据说 When it needs an annotation view, the map view calls the mapView:viewForAnnotation: method of its delegate object. 我已经阅读了一些来自互联网的教程和苹果的官方文档。 我仍然不知道何时调用此方法。无论何时调用ad

现在我想在iOS应用程序的地图上添加一个静态pin注释

但我只想知道是否会调用委托方法mapView:viewForAnnotation:

在苹果的文档中,据说

 When it needs an annotation view, the map view calls the mapView:viewForAnnotation:    method of its delegate object. 
我已经阅读了一些来自互联网的教程和苹果的官方文档。
我仍然不知道何时调用此方法。

无论何时调用
addAnnotation
method
-(MKAnnotationView*)mapView:(MKMapView*)mapView查看注释:(id)注释都会被调用。请看屏幕截图

您可以在


另外,将断点放在
addAnnotation
调用和
-(MKAnnotationView*)映射视图:(MKMapView*)映射视图注释:(id)注释
您将很容易看到函数调用的流程

显然
MKMapView
当需要在屏幕上显示您的
MKAnnotationView
时,至少会调用
mapView:viewForAnnotation:

您是否试图添加自定义注释pin?答案不完整,因为当地图可视区域发生显著变化时,也可能会调用viewForAnnotation。e、 g:用户放大纽约,然后缩小,然后放大伦敦。非常有用!!我找了一个小时!“无论何时调用addAnnotation方法…”:不。文档屏幕截图没有这样说,实际情况并非如此。正如OP在问题中引用的文档一样,地图视图“在需要注释视图时”会调用viewForAnnotation。如果地图视图当前显示要添加注释的区域,则viewForAnnotation可能会立即或很快被调用,但不能保证。正如@AmitP还提到的,如果区域发生变化,则在添加注释之后,也可以多次调用viewForAnnotation。