在ios中使用googlemap显示两个位置之间的路线?

时间:2016-07-18 08:57:31

标签: ios objective-c google-maps

我必须使用谷歌地图显示两个地点之间的路线,但我在两个地点之间只是直线,我使用下面的代码

- (void)viewDidLoad {
    [super viewDidLoad];
    GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:-33.86
                                                            longitude:151.20
                                                                 zoom:6];
    mapView_ = [GMSMapView mapWithFrame:CGRectZero camera:camera];
    mapView_.myLocationEnabled = YES;

    // Creates a marker in the center of the map.
    GMSMarker *marker = [[GMSMarker alloc] init];
    marker.position = CLLocationCoordinate2DMake(-33.86, 151.20);
    marker.title = @"Sydney";
    marker.snippet = @"Australia";
    marker.map = mapView_;



    GMSMutablePath *path = [GMSMutablePath path];
    [path addCoordinate:CLLocationCoordinate2DMake(@(-33.860).doubleValue,@(151.208).doubleValue)];
    [path addCoordinate:CLLocationCoordinate2DMake(@(-32.860).doubleValue,@(150.208).doubleValue)];

    GMSPolyline *rectangle = [GMSPolyline polylineWithPath:path];
    rectangle.strokeWidth = 2.f;
    rectangle.map = mapView_;

    self.view = mapView_;

}

请告诉我如何做到这一点,我已经看过各种以前这种类型的问题,但没有得到。 请帮我... 任何帮助将不胜感激......

1 个答案:

答案 0 :(得分:1)

这并不是这样的。您只为GMSMutablePath添加了两个坐标,因此生成的GMSPolyline是一条直线。

如果您想获得两点之间的路线,则需要使用路径API,例如Google Maps Directions API,使用HTTP请求计算位置之间的路线。