gpt4 book ai didi

iphone - 如何在 iPhone 应用程序内的 MKMapView 中显示和连接带有注释的路线的多个位置?

转载 作者:塔克拉玛干 更新时间:2023-11-02 10:13:25 25 4
gpt4 key购买 nike

我需要显示一个 MKMapView,其中包含 4 个以上具有不同注释的位置和连接这些位置的路线。我试图在 MKMapView 中显示多个位置,但我仍然无法找到如何将这些位置与路线连接起来。如果我以正确的方式实现它,我也试图检查它。我创建了一个 "CLLocationCoordinate2D",然后类似地为 4 个点添加了纬度和经度。我创建了一个自定义对象,它实现了 MKAnnotation 并返回了一个位置。

CLLocationCoordinate2D coordinate1 = CLLocationCoordinate2DMake(40.7180583 ,-74.007109);
CLLocationCoordinate2D coordinate2 = CLLocationCoordinate2DMake(40.716355 ,-74.006816);
CLLocationCoordinate2D coordinate3 = CLLocationCoordinate2DMake(40.715281 ,-74.005485);
CLLocationCoordinate2D coordinate4 = CLLocationCoordinate2DMake(40.71559 ,-74.003114);

AnnotationPoints *location1 = [[AnnotationPoints alloc] initWithCoordinate:coordinate1];
AnnotationPoints *location2 = [[AnnotationPoints alloc] initWithCoordinate:coordinate2];
AnnotationPoints *location3 = [[AnnotationPoints alloc] initWithCoordinate:coordinate3];
AnnotationPoints *location4 = [[AnnotationPoints alloc] initWithCoordinate:coordinate4];

NSArray *poiArray = [[NSArray alloc] initWithObjects:location1,location2,location3,location4,nil];
[mapView addAnnotations:poiArray];

//Inside the Annotation Class initWithCoordinate Method is implemented this way:-
-(id)initWithCoordinate:(CLLocationCoordinate2D) c{
coordinate=c;
NSLog(@"%f,%f",c.latitude,c.longitude);
return self;
}

我关心的是我需要为每个位置创建一个注释点。有没有其他方法可以让我在一个地方加载所有点。这里的另一个困难是连接所有多个点的路线。有什么帮助吗?非常感谢

最佳答案

您添加注释的方式很好。
不确定您关心的是什么以及“所有点都在一个地方”是什么意思。
如果你想在多个地方添加图钉/注释,你必须为每个地方创建一个单独的注释对象。

绘制连接这些位置的路线需要创建叠加层(不是“注释”)。
您想要将 MKPolyline 添加到 map 中,您将为其指定坐标列表。

要绘制多段线,您不需要在每个坐标处也添加注释(但如果您愿意,也可以)。

创建和添加MKPolyline 及其对应的MKPolylineViewMKPolygonMKPolygonView 非常相似。有关示例,请参见此问题:

iPhone MKMapView - MKPolygon Issues

关于iphone - 如何在 iPhone 应用程序内的 MKMapView 中显示和连接带有注释的路线的多个位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12730400/

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