【发布时间】:2018-08-17 08:05:42
【问题描述】:
开发者精神 :)
从昨天开始,我就在 google 和 github 中寻找上述问题的答案。我在 mapbox 文档页面上也找不到正确的解决方案。
【问题讨论】:
-
线条可以使用 LineLayer(低级但灵活的 api,具有许多配置)或 PolyLine(高级但配置有限)来绘制
标签: java android navigation mapbox mapbox-android
开发者精神 :)
从昨天开始,我就在 google 和 github 中寻找上述问题的答案。我在 mapbox 文档页面上也找不到正确的解决方案。
【问题讨论】:
标签: java android navigation mapbox mapbox-android
好的,我找到了解决方案!除了PolyLine 之外,还必须在地图上放置Markers。然而,如果我们想使用所有代表航路点的标记,那将是拥挤的,所以只有起点和目的地标记就足够了。此外,标记的 lats 和 lngs 必须从 Array 中获取(不知道为什么,但是如果我们使用 ArrayList,则该行不可见)。
positions = PolylineUtils.decode(attraction.getWaypoints(),5);
latLng = new LatLng[positions.size()];
for (int i = 0; i < positions.size(); i++) {
latLng[i] = new LatLng(
positions.get(i).latitude(),
positions.get(i).longitude());
}
mapboxMap.addMarker(new MarkerOptions().setPosition(new LatLng(latLng[0].getLatitude(),latLng[0].getLongitude())));
mapboxMap.addMarker(new MarkerOptions().setPosition(new LatLng(latLng[latLng.length-1].getLatitude(),latLng[latLng.length-1].getLongitude())));
// Draw Points on MapView
mapboxMap.addPolyline(new PolylineOptions()
.add(latLng)
.color(Color.parseColor("#38afea"))
.width(5));
【讨论】: