为什么这不起作用?
- (void)mapView:(MKMapView *)mapView didAddAnnotationViews:(NSArray *)views {
if (TRACE_LOG) NSLog(@"%s", __FUNCTION__);
[mapView selectAnnotation:[views lastObject] animated:YES];
return;
}
谢谢, Z@K!
最佳答案
因为您必须选择注释对象,而不是与其对应的 View 。
我 100% 不确定,但我认为以下应该有效:
MKAnnotationView* annotationView = (MKAnnotationView*)[views lastObject];
[mapView selectAnnotation:annotationView.annotation animated:YES];
如果您将注释存储在某个地方,最好直接从该存储中获取您需要的注释对象。请注意,只有当您尝试选择当前在屏幕上可见的注释时,所有这些方法才会起作用。
关于iphone - 自动显示 MKAnnotation 标注,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3531463/