MKMapView 注释图像从位置偏移
MKMapView Annotation Image Shifting from location
我有一个带有自定义注释图像的 MKMapview,当我单击注释时,我将图像更改为更大尺寸的图像,这导致点移动。
有没有办法确保图像再次与纬度和经度对齐?
- (void)mapView:(MKMapView *)mapView didSelectAnnotationView:(MKAnnotationView *)view
{
MKPointAnnotation * pin = view.annotation;
if ([pin isKindOfClass:[MKUserLocation class]])
{
return;
}
NSMutableString * imageName = [[NSMutableString alloc] initWithString:[((SpotView *)self.baseView) generatePin:self.category]];
[imageName appendString:@"-selected"];
view.image = [UIImage imageNamed:imageName];
}
结果:
我已在 didSelectAnnotationView
方法
中使用以下 属性 解决了我的问题
customPinView.centerOffset = CGPointMake(xOffset,yOffset);
并在 didDeselectAnnotationView
方法中将其设置回零
customPinView.centerOffset = CGPointMake(0, 0);
我有一个带有自定义注释图像的 MKMapview,当我单击注释时,我将图像更改为更大尺寸的图像,这导致点移动。
有没有办法确保图像再次与纬度和经度对齐?
- (void)mapView:(MKMapView *)mapView didSelectAnnotationView:(MKAnnotationView *)view
{
MKPointAnnotation * pin = view.annotation;
if ([pin isKindOfClass:[MKUserLocation class]])
{
return;
}
NSMutableString * imageName = [[NSMutableString alloc] initWithString:[((SpotView *)self.baseView) generatePin:self.category]];
[imageName appendString:@"-selected"];
view.image = [UIImage imageNamed:imageName];
}
结果:
我已在 didSelectAnnotationView
方法
customPinView.centerOffset = CGPointMake(xOffset,yOffset);
并在 didDeselectAnnotationView
方法中将其设置回零
customPinView.centerOffset = CGPointMake(0, 0);