gpt4 book ai didi

iphone - 移动 MKMapView 点到像素坐标

转载 作者:可可西里 更新时间:2023-11-01 17:11:08 24 4
gpt4 key购买 nike

我有一个简短的问题。我使用自定义 View 作为我的 map View 的标注附件。我在将注释移动到所述 View 的右下角时遇到了一些问题。我目前正在尝试获取所选注释的 CGPoint 坐标,但除此之外我已经画了一个空白任何帮助将不胜感激。

我正在使用的当前代码(我知道这是不正确的:)

   CGPoint bottomLeftPoint = CGPointMake(xOffset,[self.internalAnnotationCallout view].frame.size.height);
CLLocationCoordinate2D bottomLeftCoord = [self.branchLocation convertPoint:bottomLeftPoint toCoordinateFromView:self.branchLocation];
MKCoordinateSpan span = {latitudeDelta: kMapMultiLatDelta, longitudeDelta: kMapMultiLatDelta};
MKCoordinateRegion region = {bottomLeftCoord, span};
[self.branchLocation setRegion:region animated:YES];
//[self.branchLocation setCenterCoordinate:newCenterCoordinate animated:YES];

最佳答案

编辑:

好吧,所以我稍微弄乱了这个,并且能够将一些似乎有效的东西放在一起,希望我现在真正理解你想要实现的目标!

- (void)shiftToCorner{
//ignore "Annotation", this is just my own custom MKAnnotation subclass
Annotation *currentAnnotation = [[mapView selectedAnnotations] objectAtIndex:0];
[mapView setCenterCoordinate:currentAnnotation.coordinate];

CGPoint fakecenter = CGPointMake(20, 20);
CLLocationCoordinate2D coordinate = [mapView convertPoint:fakecenter toCoordinateFromView:mapView];
[mapView setCenterCoordinate:coordinate animated:YES];
}

让我快速解释一下这是做什么的;假设您希望注释移动到距 map View 右边缘 20 点和距底部边缘 20 点的位置。仔细想想,如果当前标注在 map View 的中心,那么到这个点的距离和到 (20, 20) 的距离是一样的。这意味着我们可以将我们的注释发送到这个点,方法是首先将我们的 map View 集中在注释上,然后动画到 (20, 20)。

关于iphone - 移动 MKMapView 点到像素坐标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7064044/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com