我想从 OSMdroid 调用方法 buildRoadOverlay
(方法位于本文底部)。如何正确设置参数?
此方法在 map 上的两个航路点之间构建一条路线。只要我在调用该方法时省略颜色和宽度,它就可以工作。现在我希望颜色为绿色,宽度为 20dp。
这是我尝试的方法:
Polyline roadOverlay = RoadManager.buildRoadOverlay(road, 7667507, 20);
应用程序启动,没有错误,但 Line RoadOverlay 不再绘制。要么是这样,要么是看不见的。我不确定。
我要调用的方法:
public static Polyline buildRoadOverlay(Road road, int color, float width){
Polyline roadOverlay = new Polyline();
roadOverlay.setColor(color);
roadOverlay.setWidth(width);
if (road != null) {
ArrayList<GeoPoint> polyline = road.mRouteHigh;
roadOverlay.setPoints(polyline);
}
return roadOverlay;
}
最佳答案
颜色是Android Color 。 width 是一个 float ,以像素为单位。所以尝试一下:
Polyline roadOverlay = RoadManager.buildRoadOverlay(road, Color.GREEN, 20.0f);
建议对道路形状设置一定的透明度,以便街道名称等保持可见。所以这样会更好:
Polyline roadOverlay = RoadManager.buildRoadOverlay(road, 0x8000FF00, 20.0f);
(是的,我对这个方法的 javadoc 表示歉意。我会改进它)
关于java - 正确调用方法 "buildRoadOverlay",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40550713/