CameraUpdateFactory

Öffentliche finale Klasse CameraUpdateFactory erweitert Objekt

Eine Klasse mit Methoden zum Erstellen von CameraUpdate-Objekten, die die Kamera einer Karte ändern. Um die Kamera der Karte zu ändern, rufen Sie animateCamera(CameraUpdate), animateCamera(CameraUpdate, GoogleMap.CancelableCallback) oder moveCamera(CameraUpdate) auf. Verwenden Sie dazu ein CameraUpdate-Objekt, das mit dieser Klasse erstellt wurde.

Zum Heranzoomen einer Karte können Sie beispielsweise den folgenden Code verwenden:

GoogleMap map = ...;
 map.animateCamera(CameraUpdateFactory.zoomIn());
 

Bevor Sie Methoden aus dieser Klasse verwenden, müssen Sie einen der folgenden Schritte ausführen, um dafür zu sorgen, dass diese Klasse initialisiert wird:

Entwicklerleitfaden

Weitere Informationen finden Sie im Entwicklerleitfaden für Kamera und Ansicht.

Public Method Summary

statisches CameraUpdate
newCameraPosition(CameraPosition KameraPosition)
Gibt ein CameraUpdate zurück, mit dem die Kamera zu einem angegebenen CameraPosition bewegt wird.
statisches CameraUpdate
newLatLng(LatLng latLng)
Gibt ein CameraUpdate zurück, mit dem die Bildschirmmitte auf einen Breiten- und Längengrad verschoben wird, der durch ein LatLng-Objekt angegeben wird.
statisches CameraUpdate
newLatLngBounds(LatLngBounds-Grenzen, int-Breite, int-Höhe, int-Padding)
Gibt einen CameraUpdate zurück, der die Kamera so umwandelt, dass die angegebenen Breiten- und Längengradgrenzen auf dem Bildschirm innerhalb eines Begrenzungsrahmens der angegebenen Abmessungen auf der größtmöglichen Zoomstufe auf dem Bildschirm zentriert werden.
statisches CameraUpdate
newLatLngBounds(LatLngBounds-Grenzen, int-Padding)
Gibt ein CameraUpdate zurück, das die Kamera so umwandelt, dass die angegebenen Breiten- und Längengradgrenzen auf dem Bildschirm mit der größtmöglichen Zoomstufe zentriert werden.
statisches CameraUpdate
newLatLngZoom(LatLng latLng, Float-Zoom)
Gibt ein CameraUpdate zurück, mit dem die Bildschirmmitte auf einen durch ein LatLng-Objekt angegebenen Breiten- und Längengrad verschoben und zur angegebenen Zoomstufe bewegt wird.
statisches CameraUpdate
scrollBy(float xPixel, float yPixel)
Gibt ein CameraUpdate-Objekt zurück, das mit der Kamera über die Karte gescrollt und dabei der Ansichtspunkt um die angegebene Anzahl von Pixeln in x- und y-Richtung verschoben wird.
statisches CameraUpdate
zoomBy(Gleitkommazahl, Punktfokus)
Gibt ein CameraUpdate zurück, das die Zoomstufe des aktuellen Kamerablickpunkts verschiebt.
statisches CameraUpdate
zoomBy(Gleitkommazahl)
Gibt ein CameraUpdate zurück, das die Zoomstufe des aktuellen Kamerablickpunkts verschiebt.
statisches CameraUpdate
zoomIn()
Gibt ein CameraUpdate zurück, das die Karte vergrößert, indem die Höhe des Blickwinkels näher an die Erdoberfläche verschoben wird.
statisches CameraUpdate
zoomOut()
Gibt ein CameraUpdate zurück, das aus der Karte herauszoomt, indem die Höhe des Blickwinkels von der Erdoberfläche wegbewegt wird.
statisches CameraUpdate
zoomTo(Gleitkomma-Zoom)
Gibt ein CameraUpdate zurück, das den Blickwinkel der Kamera auf einen bestimmten Zoomfaktor verschiebt.

Inherited Method Summary

Public Methods

public static CameraUpdate newCameraPosition (CameraPosition KameraPosition)

Gibt ein CameraUpdate zurück, mit dem die Kamera zu einem angegebenen CameraPosition bewegt wird. Dadurch wird eine Umwandlung des Breitengrads, Längengrads, der Zoomstufe, der Ausrichtung und der Neigung des CameraPosition-Objekts erstellt.

Parameter
cameraPosition
Rückgaben

public static CameraUpdate newLatLng (LatLng latLng)

Gibt ein CameraUpdate zurück, mit dem die Bildschirmmitte auf einen Breiten- und Längengrad verschoben wird, der durch ein LatLng-Objekt angegeben wird. Dadurch wird die Kamera auf das Objekt LatLng zentriert.

Parameter
latLng Ein LatLng-Objekt, das den gewünschten Breiten- und Längengrad enthält.
Rückgaben

public static CameraUpdate newLatLngBounds (LatLngBounds bounds, int width, int height, int padding)

Gibt einen CameraUpdate zurück, der die Kamera so umwandelt, dass die angegebenen Breiten- und Längengradgrenzen auf dem Bildschirm innerhalb eines Begrenzungsrahmens der angegebenen Abmessungen auf der größtmöglichen Zoomstufe auf dem Bildschirm zentriert werden. Sie können einen zusätzlichen Abstand angeben, um die Größe des Begrenzungsrahmens weiter einzuschränken. Die zurückgegebene CameraUpdate hat eine Lage von 0 und eine Neigung von 0.

Im Gegensatz zu newLatLngBounds(LatLngBounds, int) können Sie die von dieser Methode zurückgegebene CameraUpdate verwenden, um die Kamera vor der Layoutphase der Karte zu ändern, da die Argumente die gewünschte Größe des Begrenzungsrahmens angeben.

Parameter
Grenzen Bereich, der in den Begrenzungsrahmen passt
width Breite des Begrenzungsrahmens in Pixeln (px)
height Höhe des Begrenzungsrahmens in Pixeln (px)
padding Zusätzliche Größenbeschränkung (in px) des Begrenzungsrahmens
Rückgaben

public static CameraUpdate newLatLngBounds (LatLngBounds-Grenzen, int. Abstand)

Gibt ein CameraUpdate zurück, das die Kamera so umwandelt, dass die angegebenen Breiten- und Längengradgrenzen auf dem Bildschirm mit der größtmöglichen Zoomstufe zentriert werden. Sie können einen Innenrand festlegen, um den Begrenzungsrahmen von den Rändern der Kartenansicht aus einzufügen. Der zurückgegebene CameraUpdate hat eine Lage von 0 und eine Neigung von 0.

Ändern Sie die Kamera mit diesem Kameraupdate erst, nachdem das Layout der Karte geändert wurde. Damit mit dieser Methode der geeignete Begrenzungsrahmen und die Zoomstufe korrekt ermittelt werden können, muss die Karte eine Größe haben. Andernfalls wird IllegalStateException ausgegeben. Es reicht NICHT aus, dass die Karte verfügbar ist. Die Ansicht mit der Karte muss auch so gestaltet worden sein, dass ihre Abmessungen bestimmt wurden. Wenn Sie nicht sicher sind, ob das der Fall ist, verwenden Sie stattdessen newLatLngBounds(LatLngBounds, int, int, int) und geben Sie die Abmessungen der Karte manuell an.

Parameter
Grenzen an den Bildschirm anpassen.
padding Abstand (in Pixel), der zwischen den Rändern der Begrenzungsrahmen und den Ansichtsrändern bleibt. Dieser Wert wird auf alle vier Seiten des Begrenzungsrahmens angewendet.
Rückgaben

public static CameraUpdate newLatLngZoom (LatLng latLng, Float-Zoom)

Gibt ein CameraUpdate zurück, mit dem die Bildschirmmitte auf einen durch ein LatLng-Objekt angegebenen Breiten- und Längengrad verschoben und zur angegebenen Zoomstufe bewegt wird.

Parameter
latLng Ein LatLng-Objekt, das den gewünschten Breiten- und Längengrad enthält.
zoom die gewünschte Zoomstufe im Bereich von 2,0 bis 21,0. Werte unterhalb dieses Bereichs werden auf 2,0 und darüber liegende Werte auf 21,0 gesetzt. Erhöhen Sie den Wert, um heranzuzoomen. Nicht alle Bereiche haben Kacheln in den höchsten Zoomstufen.
Rückgaben

public static CameraUpdate scrollBy (float xPixel, float yPixel)

Gibt ein CameraUpdate-Objekt zurück, das mit der Kamera über die Karte gescrollt und dabei der Ansichtspunkt um die angegebene Anzahl von Pixeln in x- und y-Richtung verschoben wird.

Beispiele:

  • Wenn xPixel = 5 und yPixel = 0 ist, scrollt das System nach rechts, indem die Kamera so bewegt wird, dass die Karte um 5 Pixel nach links verschoben zu sein scheint.
  • Wenn xPixel = 0 und yPixel = 5 ist, scrollt das System nach unten durch Bewegen der Kamera, sodass die Karte um 5 Pixel nach oben verschoben zu sein scheint.

Scrollaktionen beziehen sich auf die aktuelle Ausrichtung der Karte. Bei einer Kameraposition von 90 Grad ist beispielsweise Osten „oben“ und durch Scrollen nach rechts wird sie nach Süden verschoben.

Parameter
xPixel die Anzahl der Pixel für horizontales Scrollen. Ein positiver Wert verschiebt die Kamera bezogen auf ihre aktuelle Ausrichtung nach rechts. Bei einem negativen Wert wird die Kamera unter Berücksichtigung der aktuellen Ausrichtung nach links bewegt.
yPixel die Anzahl der Pixel für vertikales Scrollen. Ein positiver Wert bewegt die Kamera unter Berücksichtigung der aktuellen Ausrichtung nach unten. Bei einem negativen Wert bewegt sich die Kamera unter Berücksichtigung der aktuellen Ausrichtung nach oben.
Rückgaben

public static CameraUpdate zoomBy (Gleitkommazahl, Punktfokus)

Gibt ein CameraUpdate zurück, das die Zoomstufe des aktuellen Kamerablickpunkts verschiebt.

Ein durch den Fokus angegebener Punkt bleibt fixiert (d.h., er entspricht sowohl vor als auch nach dem Zoomen der gleichen Breite/Länge).

Diese Methode unterscheidet sich von zoomTo(float) darin, dass der Zoom relativ zur aktuellen Kamera ist.

Das ist beispielsweise der Fall, wenn sich LatLng (11.11, 22.22) derzeit an der Bildschirmposition (23, 45) befindet. Nachdem diese Methode mit einem Zoomfaktor und diesem LatLng aufgerufen wurde, ist die Bildschirmposition dieses LatLng weiterhin (23, 45).

Parameter
Menge , um die Zoomstufe zu ändern. Positive Werte geben an, dass näher an die Erdoberfläche herangezoomt wird, während negative Werte anzeigen, dass von der Erdoberfläche weggezoomt wird.
Konzentration Pixelposition auf dem Bildschirm, die nach dem Zoomen fixiert bleiben soll. Die Längen- und Breitengrade, die sich vor der Kamerabewegung an dieser Pixelposition befanden, bleiben nach dem Bewegen der Kamera gleich.
Rückgaben

public static CameraUpdate zoomBy (Gleitkommazahl)

Gibt ein CameraUpdate zurück, das die Zoomstufe des aktuellen Kamerablickpunkts verschiebt.

Diese Methode unterscheidet sich von zoomTo(float) darin, dass der Zoom relativ zur aktuellen Kamera ist.

Parameter
Menge , um die Zoomstufe zu ändern. Positive Werte geben an, dass näher an die Erdoberfläche herangezoomt wird, während negative Werte anzeigen, dass von der Erdoberfläche weggezoomt wird.
Rückgaben

public static CameraUpdate zoomIn ()

Gibt ein CameraUpdate zurück, das die Karte vergrößert, indem die Höhe des Blickwinkels näher an die Erdoberfläche verschoben wird. Die Zoomstufe beträgt 1,0.

Rückgaben

public static CameraUpdate zoomOut ()

Gibt ein CameraUpdate zurück, das aus der Karte herauszoomt, indem die Höhe des Blickwinkels von der Erdoberfläche wegbewegt wird. Die Zoomstufe beträgt -1,0.

Rückgaben

public static CameraUpdate zoomTo (Gleitkommazahl-Zoom)

Gibt ein CameraUpdate zurück, das den Blickwinkel der Kamera auf einen bestimmten Zoomfaktor verschiebt.

Parameter
zoom die gewünschte Zoomstufe im Bereich von 2,0 bis 21,0. Werte unterhalb dieses Bereichs werden auf 2,0 und darüber liegende Werte auf 21,0 gesetzt. Erhöhen Sie den Wert, um heranzuzoomen. Nicht alle Bereiche haben Kacheln in den höchsten Zoomstufen.