Podczas pracy ViewHolder of GoogleMap Lite, jako część wiersza w RecyclerView, szukam wywołania zwrotnego, aby ustawić lokalizację szpilek, gdy mapa jest gotowa. Znalazłem obie funkcje poniżej.OnMapLoadedCallback i OnMapReadyCallback, kiedy użyć?
OnMapLoadedCallback: https://developers.google.com/android/reference/com/google/android/gms/maps/GoogleMap.OnMapLoadedCallback?hl=en
OnMapReadyCallback: https://developers.google.com/android/reference/com/google/android/gms/maps/OnMapReadyCallback
Zarówno również okazały roboczego i użyteczność (patrz poniżej). Dlatego jestem zaintrygowany, jeśli mają jakieś specyficzne zachowanie, które powinno być stosowane przy innej okazji, czy są one rzeczywiście podobne i mogą być stosowane zamiennie?
Zastosowanie OnMapLoadedCallback:
LatLngBounds.Builder builder = new LatLngBounds.Builder();
for (Marker marker : markers) {
builder.include(marker.getPosition());
}
final CameraUpdate cameraUpdate = CameraUpdateFactory.newLatLngBounds(builder.build(), 0);
googleMap.setOnMapLoadedCallback(new GoogleMap.OnMapLoadedCallback() {
@Override
public void onMapLoaded() {
googleMap.moveCamera(cameraUpdate);
}
});
Zastosowanie OnMapReadyCallback:
LatLngBounds.Builder builder = new LatLngBounds.Builder();
for (Marker marker : markers) {
builder.include(marker.getPosition());
}
final CameraUpdate cameraUpdate = CameraUpdateFactory.newLatLngBounds(builder.build(), 0);
mapView.getMapAsync(new OnMapReadyCallback() {
@Override
public void onMapReady(GoogleMap googleMap) {
googleMap.moveCamera(cameraUpdate);
}
});
Dzięki !!
dzięki, że zadał pytanie, szukałem tego samego :) –