我目前在Android项目上使用Google Maps API V2,我需要能够在用户当前位置周围绘制一个圆圈,并在用户当前位置周围显示兴趣点内的标记。
我正在努力获得表示用户当前位置的小标记,以便我可以围绕它绘制一个圆圈。
到目前为止,这是我的代码。
//Set up map and display users current position.
MapFragment mapFragment = (MapFragment) getFragmentManager()
.findFragmentById(R.id.nearbyMapSearch);
mapFragment.getMapAsync(this);
final GoogleMap map = (((MapFragment) getFragmentManager().findFragmentById(R.id.nearbyMapSearch)).getMap());
map.setMyLocationEnabled(true);
//zoom to users location
GeoLocationHandler geoHandler = new GeoLocationHandler(getActivity().getApplicationContext());
Log.i("Search Fragment", "" + geoHandler.getCurrentLatitude() + " , " + geoHandler.getCurrentLongitude());
LatLng loc = new LatLng(geoHandler.getCurrentLatitude(), geoHandler.getCurrentLongitude());
//Begin animating camera.
map.animateCamera(CameraUpdateFactory.newLatLngZoom(
new LatLng(loc.latitude, loc.longitude), 13));
//Instantiate new Camera position
CameraPosition cameraPosition = new CameraPosition.Builder()
.target(new LatLng(loc.latitude, loc.longitude))
.zoom(3)
.bearing(0)
.tilt(0)
.build();
map.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition));
非常感谢任何帮助。
答案 0 :(得分:7)
Circle circle = 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
您应订阅用户位置的更新,并使用
重置圈子中心circle.setCenter(newLocation);