iOS Google Maps SDK 中宽度渐变的多段线

Polyline with gradient across width in iOS Google Maps SDK

我有 iOS 应用程序,其中集成了 Google Maps SDK。 我的路线具有默认样式,我可以通过 spans.

将颜色更改为 length 中的渐变

是否可以更新折线颜色并在 width 中定义渐变(就像原始 Google 地图应用程序那样)?:

更新: 我通过使用两条具有不同样式的相同多段线添加了有限版本,但我肯定在寻找更好的解决方案:

我关注了 official documentation,但没有找到任何相关参考。

我这样做:

GMSPath *path = [GMSPath pathFromEncodedPath:overview_route];
GMSPolyline *polyline = [GMSPolyline polylineWithPath:path];
polyline.strokeWidth = 5;

GMSStrokeStyle *greenToRed = [GMSStrokeStyle gradientFromColor:[UIColor greenColor] toColor:[UIColor redColor]];
polyline.spans = @[[GMSStyleSpan spanWithStyle:greenToRed]];
polyline.map = self.mapView;

您可以参考文档了解更多信息:https://developers.google.com/maps/documentation/ios-sdk/shapes

我使用例如从蓝色到深色(黑色)的两个渐变:

let brandBlue = GMSStrokeStyle.solidColor(.blue)
let nightBlue = GMSStrokeStyle.solidColor(.dark)
let gradientBlue = GMSStrokeStyle.gradient(from: .blue, to: .dark)

polyline.spans = [GMSStyleSpan(style: brandBlue),
                  GMSStyleSpan(style: nightBlue),
                  GMSStyleSpan(style: gradientBlue)]

polyline.map = mainMap.mapView