正确调用方法“buildRoadOverlay”

时间:2016-11-11 15:03:24

标签: java android methods osmdroid

我想从OSMdroid调用方法buildRoadOverlay(方法在本文的底部)。如何正确设置参数?

此方法在两个航点之间的地图上构建路线。只要我在调用方法时省略颜色和宽度,它就可以工作。现在我希望颜色为绿色,宽度为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;
    }

1 个答案:

答案 0 :(得分:1)

颜色是Android Color。 width是一个浮点数,以像素为单位。所以试试:

Polyline roadOverlay = RoadManager.buildRoadOverlay(road, Color.GREEN, 20.0f);

建议在道路形状上加一些透明度,以便街道名称保持可见。所以这会更好:

Polyline roadOverlay = RoadManager.buildRoadOverlay(road, 0x8000FF00, 20.0f);

(是的,我为这种方法的javadoc道歉。我会改进它)