Iphone 谷歌地图视图如何在地图缩放时获取原始点或帧进行注释?
我在地图上设置了自定义注释,点击注释,我得到了这个方法的调用Iphone 谷歌地图视图如何在地图缩放时获取原始点或帧进行注释?,iphone,objective-c,ios,xcode,ipad,Iphone,Objective C,Ios,Xcode,Ipad,我在地图上设置了自定义注释,点击注释,我得到了这个方法的调用 (void)mapView:(MKMapView *)mapView didSelectAnnotationView:(MKAnnotationView *)view NS_AVAILABLE(NA, 4_0) 在该方法中,我希望打开popover,以便在正常模式下映射时获得正确的帧形式(MKAnnotationView*)视图 但是,当我缩放地图并单击注释时,我得到了错误的帧,此时x和y值很大,所以我得到的任何偏移或缩放因子的任何
(void)mapView:(MKMapView *)mapView didSelectAnnotationView:(MKAnnotationView *)view NS_AVAILABLE(NA, 4_0)
在该方法中,我希望打开popover,以便在正常模式下映射时获得正确的帧形式(MKAnnotationView*)视图
但是,当我缩放地图并单击注释时,我得到了错误的帧,此时x和y值很大,所以我得到的任何偏移或缩放因子的任何解决方案都会根据它进行分割,从而得到注释的实际帧。尝试以下方法:
CGPoint annotationPoint = [mapView convertCoordinate:view.annotation.coordinate
toPointToView:mapView];
float boxDY = annotationPoint.y - 35;
float boxDX = annotationPoint.x - 1;
CGRect box = CGRectMake(boxDX, boxDY, 1, 1);
[popoverControllerDetail presentPopoverFromRect:box
inView:mapView
permittedArrowDirections:(UIPopoverArrowDirectionDown|
UIPopoverArrowDirectionLeft|
UIPopoverArrowDirectionRight)
animated:YES];
显示该方法中的代码。