我正在使用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));
}
答案 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();
}