如何更新Google地图上的Circle对象?

时间:2017-11-26 08:12:55

标签: android google-maps geometry

在我的应用中,我在用户周围显示一个圆圈。当用户移动时,圆圈必须相应地移动。现在要执行该任务,我在onLocationChange方法中调用以下函数:

public void drawCircleOnMap(GoogleMap googleMap, double lat, double lng) {
    if(circle != null) {
        circle.remove();
    }
    circle = googleMap.addCircle(new CircleOptions().center(new LatLng(lat, lng)).radius(CIRCLE_RADIUS)
    .fillColor(Color.argb(100,88, 214, 141)).strokeColor(Color.GREEN));
}

然而,问题是,每次更新后,圆圈都会闪烁。我想删除自己,然后创建一个新的。什么是使它变得更加闷热的最好方法?

1 个答案:

答案 0 :(得分:2)

你只需要设置中心属性而不是删除并在位置更新时再次绘制圆圈,只需设置如下所示的中心属性

circle.setCenter(newlatlng)