即使执行以下操作,折线颜色也不会更改:

Polyline p;
lineOptions=new PolylineOptions();
lineOptions.addAll(points);
lineOptions.width(12);
lineOptions.geodesic(true);
lineOptions.clickable(true);
lineOptions.color(Color.BLACK);
p = mMap.addPolyline(lineOptions);
p.setColor(Color.BLUE);


我的问题是为什么?

Points是先前声明的LatLng ArrayList。

最佳答案

如果要更改已经在地图上绘制的折线的颜色,则需要将该折线(具有更新的颜色)添加到地图上,以通知我们已更改了颜色,如下所示:

lineOptions.color(Color.BLACK);
p = mMap.addPolyline(lineOptions);
if(p !=null) {
    p.setColor(Color.BLUE);
    mMap.addPolyline(p);
}


它将颜色从黑色变为蓝色

希望这可以帮助!

09-05 01:43