圆形叠加填充颜色并不总是在Google Maps v2上绘制

时间:2013-11-17 01:01:10

标签: android google-maps overlay geometry

我正在使用Android中的Google Maps V2在mapFragment中绘制几个圆圈。一切都是V1的桃子,但在切换后,我的圆圈的填充颜色并不总是被绘制。

例如,我打开地图,圆圈在那里并填充,但如果我缩放几次填充颜色消失。我缩小了它,它仍然消失了(或者它可能会重新出现)。我无法确定哪种行为导致它消失,有时它甚至没有开始和缩放导致它出现。

以下是我的一个圈子的一些代码:

private void addAccuracyCircle() {
    accuracyCircle = map.addCircle(new CircleOptions()
            .center(LocationFinder.getActualPoint())
            .radius(LocationFinder.getActualLocation().getAccuracy())
            .fillColor(Color.argb(10, 0, 50, 240))
            .strokeColor(Color.argb(50, 0, 50, 240))
            .strokeWidth(2)
            .zIndex(1));
}

1 个答案:

答案 0 :(得分:1)

您应该尝试在地图视图上执行map.invalidate() - 发生的原因可能是放大\ out并在地图中导航时 - mapview对象再次渲染自身并“错过”绘制颜色填写,我有一个类似的问题,并解决它我写了一个刷新方法,清除地图上的控件 - > invalidate->地图上的重绘控件 - >无效 可能有点乱,但它对我有用。

(类似) -

protected void RefreshMap() {
  map.getOverlays().clear();
  map.invalidate();

  // Use a list of itemize overlay here and add all the objects
  //from that list upon refresh

  map.invalidate();
}