java - 正确调用方法 "buildRoadOverlay"

标签 java android methods osmdroid

我想从 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/

相关文章:

java - 使用 IntelliJ IDEA 进行大型 Eclipse RTC 项目

android - 如何使用TeamCity构建我的React native 应用程序?

java - 通过两种单独的方法获取数据

python - 何时使用静态方法和类方法

java - 如何使用单个方法迭代不同对象的 ArrayList?

java - Spring接口(interface)转换器

java - 如何从一个数据源读取对象并使用 Spring 数据写入另一个数据源?

java - 使 ViewPager 在 android 中无限滚动

Android - 旋转图像避免 OutOfMemory

android - Dagger 2 向父组件添加子组件