我在网上做了很多研究,但我无法找到关于这个主题的任何内容。 Anywho,我有一张地图找到设备的当前位置,这是代码:
std::vector
我停用了以设备为中心的 mMap.setMyLocationEnabled(false);
mMap.getUiSettings().setMyLocationButtonEnabled(false);
'地点;有没有办法在没有按钮的情况下居中地图?因此,当地图加载时,它会自动居中到设备上。位置。
答案 0 :(得分:0)
那么该按钮的作用是找到你当前的纬度和长度,然后根据它确定地图摄像头的位置。如果你知道你想要居中的位置的纬度和长度,那么你可以使用下面的代码 -
CameraPosition target;
latLngTemp = new LatLng(-36.84490439080399, 174.76745902901663);
target = CameraPosition.builder( ).target( latLngTemp ).zoom( 10 ).build( );
mMap.moveCamera(CameraUpdateFactory.newCameraPosition(target));
所以现在设备屏幕上的地图以上述坐标为中心
答案 1 :(得分:0)
您可以使用以下代码
CameraPosition cameraPosition = new CameraPosition.Builder()
.target(new LatLng(/*current latitude*/location.getLatitude(), /*current longitude*/location.getLongitude())) // Sets the center of the map to location user
.zoom(17) // Sets the zoom
.build(); // Creates a CameraPosition from the builder
map.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition));
有关详细信息,请访问https://developers.google.com/maps/documentation/android-api/views
答案 2 :(得分:0)
您应该实现LocationListener以获取位置更新。在您的onLocationChanged(位置位置)中心,您可以使用相机
@Override
public void onLocationChanged(Location location) {
map.animateCamera(CameraUpdateFactory.newCameraPosition(new LatLong(location.getLatitude(), location.getLongitude()));
}
请参阅此link以实现LocationListener