Этот пост очень похож на Этот , который в настоящее время не имеет решения (3 года)
Основная проблема заключается в том, что GoogleMaps, похоже, добавляет ненужное количество отступов. вокруг моего изображения наложения на землю это не имеет смысла для меня, так как границы установлены на том же значении, что и наложение на земле.
@Override
public void onMapReady(GoogleMap googleMap) {
final LatLngBounds NewarkBounds = new LatLngBounds(
new LatLng(FILL, -FILL),
new LatLng(FILL, -FILL)
);
mMap = googleMap;
mMap.getUiSettings().setMapToolbarEnabled(false);
mMap.getUiSettings().setZoomGesturesEnabled(false);
mMap.getUiSettings().setMyLocationButtonEnabled(false);
LatLng myPosition = new LatLng(latitude,longitude);
GroundOverlayOptions newarkMap = new GroundOverlayOptions()
.image(BitmapDescriptorFactory.fromResource(R.drawable.maptest))
.positionFromBounds(NewarkBounds)
.visible(true);
mMap.addGroundOverlay(newarkMap);
if((myPosition.latitude <= FILL&& myPosition.latitude >=FILL) && (myPosition.longitude >= -FILL&& myPosition.longitude <= -FILL)){
mMap.setMyLocationEnabled(true);
}
else {
mMap.setMyLocationEnabled(false);
}
mMap.setOnMyLocationButtonClickListener(this);
mMap.setOnMyLocationClickListener(this);
mMap.setMapType(0);
/*
int width = getResources().getDisplayMetrics().widthPixels;
int height = getResources().getDisplayMetrics().heightPixels;
int padding = (int) (width * 0.001); // offset from edges of the map 12% of screen
CameraUpdate cu = CameraUpdateFactory.newLatLngBounds(NewarkBounds, width, height, 0);
mMap.animateCamera(cu);
mMap.setPadding(0,0,0,0);
mMap.setLatLngBoundsForCameraTarget(NewarkBounds);
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(NewarkBounds.getCenter(), 17));
// Set the camera to the greatest possible zoom level that includes the bounds
*/
mMap.setOnMapLoadedCallback(new GoogleMap.OnMapLoadedCallback() {
@Override
public void onMapLoaded() {
// Set the camera to the greatest possible zoom level that includes the bounds
mMap.moveCamera(CameraUpdateFactory.newLatLngBounds(NewarkBounds, 0));
//Centering the camera within bounds:
mMap.moveCamera(CameraUpdateFactory.newLatLngZoom(NewarkBounds.getCenter(), 17));
//Restricting the user's scrolling and panning within bounds:
mMap.setLatLngBoundsForCameraTarget(NewarkBounds);
}
});
}
Я пробовал несколько способов исправить это, я нашел это Можно назначить разные координаты за пределами границ наложения на землю, но это просто неверно. Ниже показано текущее отображение.
Это то, чего я хочу достичь
Буду признателен за любые мысли по этому вопросу, так как это сводит меня с ума. Спасибо!