OStack程序员社区-中国程序员成长平台

标题: ios - 在 Google Map iOS 上使用多个标记绘制路线 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 10:58
标题: ios - 在 Google Map iOS 上使用多个标记绘制路线

我是 iPhone 开发的新手,在我的应用程序中,我想在两点之间绘制路线并在我的路线上显示多个标记。现在我完成了两点之间的路线,但我不知道如何在我的路线上绘制多个标记。所以请帮我做这件事。

提前致谢!!!

_markerStart = [GMSMarker new];
_markerStart.title = [[[routeDict objectForKey"legs"] objectAtIndex:0]objectForKey"start_address"];
_markerStart.icon = newImage; //[UIImage imageNamed"startMarker.png"];
_markerStart.map = gmsMapView;
_markerStart.position = startPoint;

_markerFinish = [GMSMarker new];
_markerFinish.title = [[[routeDict objectForKey"legs"] objectAtIndex:0]objectForKey"end_address"];
_markerFinish.icon = newImage; //[UIImage imageNamed"finishMarker.png"];
_markerFinish.map = gmsMapView;
_markerFinish.position = endPoint;

这里我添加了开始和结束标记。



Best Answer-推荐答案


当您在两点之间绘制路线时,您将获得路线坐标。您可以从中获取一些坐标并在 Google map 上绘制它们。

对于绘制路线,您可能使用了 GMSPolyline。对于折线,您必须使用 GMSPath。从路径中,您可以使用方法获取坐标

-(CLLocationCoordinate2D)coordinateAtIndexNSUInteger)index

GMSPath Doc

您可以使用这些坐标在路线上绘制标记。 GMSMarkers Doc

检查此代码(此处 gmsPath 为 GMSPath)EDIT:

//GMSPath *gmsPath;
//NSString *title;
for (int i = 0; i < [gmsPath count]; i++) {
    CLLocationCoordinate2D location = [gmsPath coordinateAtIndex: i];
    GMSMarker *marker = [GMSMarker markerWithPosition:location];
    marker.title = title;
    marker.icon = [UIImage imageNamed"marker_img.png"];
    marker.map = self.mapView;
}

这将为每个坐标绘制标记。

关于ios - 在 Google Map iOS 上使用多个标记绘制路线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32688250/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4