我正在创建一个Geofence应用,我希望它只在用户的当前位置创建地理围栏或圈子。到目前为止,解决方案是在地图上创建标记,但我并不打算使用地图标记。无论蓝点位于地图上,我都希望它围绕它生成地理围栏。我该怎么办?
private void startGeofence() {
Log.i(TAG, "startGeofence");
Geofence geofence = createGeofence( geoFenceMarker.getPosition(), GEOFENCE_RADIUS);
GeofencingRequest geofencingRequest = createGeofenceRequest(geofence);
addGeofence(geofencingRequest);
}
private Marker geoFenceMarker;
private Circle geofenceLimit;
private void drawGeofence() {
if (geofenceLimit != null){
geofenceLimit.remove();
}
CircleOptions circleOptions = new CircleOptions()
.center( geoFenceMarker.getPosition())
.strokeColor(Color.argb(50, 70,70,70))
.fillColor( Color.argb(100, 150,150,150) )
.radius( GEOFENCE_RADIUS );
geofenceLimit = googleMap.addCircle( circleOptions );
}
答案 0 :(得分:0)
您可以使用Circle类在用户当前位置绘制圆圈。
Circle drawCircle = map.addCircle(new CircleOptions()
.center(new LatLng(loc.latitude, loc.longitude))
.radius(1000)
.strokeColor(Color.RED)
.fillColor(Color.BLUE));
您可以从https://developers.google.com/android/reference/com/google/android/gms/maps/model/Circle
获取更多信息希望这对你有所帮助。