如何更改android地图中的圆圈颜色

时间:2013-01-23 12:16:23

标签: android google-maps geometry

我开发了一个基于谷歌的Android地图应用程序,它指出了我当前的位置,我成功了。但是,我使用的标记有一个圆圈,当它放大时它是深蓝色,这有点奇怪。我们无法追踪附近的地方给我们。我使用了locationoverlay。这是我的代码:

private void setMaptoLocation(Location location) {
    mapView.setBuiltInZoomControls(true);
    mapView.setTraffic(true);
    int LAT = (int) (location.getLatitude() * 1E6);
    int LNG = (int) (location.getLongitude() * 1E6);
    GeoPoint point = new GeoPoint(LAT, LNG);
    MapController mapController = mapView.getController();
    mapController.setCenter(point);
    MyLocationOverlay myLocationOverlay = new MyLocationOverlay(this,mapView);
    myLocationOverlay.enableMyLocation();
    mapView.getOverlays().add(myLocationOverlay);
    mapController.animateTo(point);
}

任何人都可以建议改变圆圈的颜色/使其透明,这样mapview会更好一些。提前谢谢!!!
   This is the view that I am getting

2 个答案:

答案 0 :(得分:0)

在Google Maps API v2中,我认为不需要叠加层。 现在您可以按如下方式更改圆圈颜色;

// Create an ellipse centered at Sydney.
    PolygonOptions options = new PolygonOptions();
    int numPoints = 400;
    float semiHorizontalAxis = 10f;
    float semiVerticalAxis = 5f;
    double phase = 2 * Math.PI / numPoints;
    for (int i = 0; i <= numPoints; i++) {
        options.add(new LatLng(SYDNEY.latitude + semiVerticalAxis * Math.sin(i * phase),
                SYDNEY.longitude + semiHorizontalAxis * Math.cos(i * phase)));
    }
//Here you can change the color of the circle market called as "plygon" on Google Maps API v

    mSYDNEYcircle = mMap.addPolygon(new options
            .strokeWidth(float width)
            .strokeColor(Color.BLACK)
            .fillColor(Color.YELLOW));

有关详细信息,请参阅the Google API v2 Guide

enter image description here

答案 1 :(得分:0)

您可以使用以下CircleOption函数将Circle添加到地图中,其默认填充颜色是透明的。此功能将围绕您的位置绘制圆圈:

 map.addCircle(new CircleOptions()
     .center(new LatLng(Your_Location))
     .radius(10000) //radius in meters
     .strokeColor(Color.BLUE); //border color default is black

以上代码可让您的圈子透明化。您还可以使用CircleOptions中的.fillColor(Color.argb())属性填充圆圈颜色,