我应该与:
float delta = 0.1f;
List points = Arrays.asList(new LatLng(90, -180),
new LatLng(-90+delta, -180+delta),
new LatLng(-90+delta, 0),
new LatLng(-90+delta, 180-delta),
new LatLng(0, 180-delta),
new LatLng(90-delta, 180-delta),
new LatLng(90-delta, 0),
new LatLng(90-delta, -180+delta),
new LatLng(0,-180+delta));
PolygonOptions options = new PolygonOptions();
options.addAll(points);
options.fillColor(R.color.red_half_alpha); // 50% opacity red, for example #80FF0000
map.addPolygon(options);
我希望你能看到这段代码的去向。它适用于 android v2 地图。
我认为浮点计算存在一些问题。另一点是,如果您非常仔细地观察俄罗斯和美国之间的关系(例如 LatLng(0,180)、LatLng(0,-180)),您很可能会看到一条非常细的线。
这是你的多边形。
PS:如果您在地图上看到漏洞,请提醒一下,它是如何为您服务的。我想很多人都有同样的问题。