I understand that the title might add a little confusion, I'll do my best to explain it here. I'm trying to create an app for a charity, and they want a map for their site that they can navigate around. I'm currently using the google maps overlay function. I've almost got the desired outcome, but there are a few things I can't get my head around.
@Override
public void onMapReady(GoogleMap googleMap) {
//LatLng NEWARK = new LatLng(51.251115, -0.599319);
LatLngBounds NewarkBounds = new LatLngBounds(
new LatLng(50.807686, -0.430219),
new LatLng(50.811414, -0.424310)
);
mMap = googleMap;
mMap.getUiSettings().setMapToolbarEnabled(false);
//mMap.addMarker(new MarkerOptions().position(NEWARK).title("Reserve"));
LatLng myPosition = new LatLng(latitude,longitude);
GroundOverlayOptions newarkMap = new GroundOverlayOptions()
.image(BitmapDescriptorFactory.fromResource(R.drawable.maptest))
.positionFromBounds(NewarkBounds)
.visible(false);
if((myPosition.latitude <= PLACETEXT && myPosition.latitude >=PLACETEXT ) &&
(myPosition.longitude >= -PLACETEXT && myPosition.longitude <= -PLACETEXT )){
newarkMap.visible(true);
mMap.setMyLocationEnabled(true);
}
else {
mMap.setMyLocationEnabled(false);
}
GroundOverlay imageOverlay = mMap.addGroundOverlay(newarkMap);
mMap.setMyLocationEnabled(true);
mMap.setOnMyLocationButtonClickListener(this);
mMap.setOnMyLocationClickListener(this);
mMap.moveCamera(CameraUpdateFactory.newLatLng(new LatLng(myPosition.latitude,
myPosition.longitude)));
mMap.setMapType(0);
mMap.setLatLngBoundsForCameraTarget(NewarkBounds);
}
This is my OnMapReady function, I've tried playing around with the zoom function etc, I'm new to this stuff so I might be doing something fundamentally wrong.
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<fragment
android:id="@+id/map"
android:name="com.google.android.gms.maps.SupportMapFragment"
android:layout_width="match_parent"
android:layout_height="match_parent">
</fragment>
</androidx.constraintlayout.widget.ConstraintLayout>
Layout file ^^
The image above shows whats currently displaying, ignore the map it is a placeholder, What I'm trying to achieve is to be fully zoomed in the person's current location, and to only be able to drag around the photo to the boundary of the LatLngs of the map?