7 Stimmen

Wie man einen flexiblen Marker auf der Karte anbringt, ähnlich wie bei Uber und Lyft?

Wie kann man einen flexiblen Marker auf der Karte anbringen, ähnlich wie bei Uber und Lyft? Ich benutze Google Maps v2.

Grundsätzlich möchte ich einen Marker auf der Karte anzeigen, während sich die Position des Markers ändert, wenn die Karte bewegt wird.

bearbeitet:

Okay, ich habe mein Problem gelöst.

Erstens: Fügen Sie demselben Layout ein ImageView hinzu und positionieren Sie es in der Mitte. Zweitens: Verwenden Sie den folgenden Ansatz, um die Koordinaten der Mitte der Karte zu erhalten

1- Greifen Sie auf die View-Gruppe (FrameLayout) zu, in meinem Fall, wo das Kartenfragment sich befindet.

FrameLayout myContainer = (FrameLayout) findViewById(R.id.content_frame);
int mapHeight = myContainer.getHeight();
int mapWidth = myContainer.getWidth();

2- Verwenden Sie setOnCameraChangeListener und erhalten Sie die Koordinaten bei Kamerabewegung:

LatLng center = mMap.getCameraPosition().target;

7voto

mhdtouban Punkte 821

bearbeitet:

Ok, ich habe mein Problem gelöst.

erstens: fügen Sie ein ImageView zum gleichen Layout hinzu und positionieren Sie es in der Mitte. Zweitens: Um die Koordinate der Mitte der Karte zu erhalten, verwenden Sie den folgenden Ansatz

1- Holen Sie sich die ViewGroup (FrameLayout), in meinem Fall, wo das Kartenfragment platziert ist.

FrameLayout myContainer = (FrameLayout) findViewById(R.id.content_frame);
int mapHeight = myContainer.getHeight();
int mapWidth = myContainer.getWidth();

2- Verwenden Sie setOnCameraChangeListener und bei Kamerawechsel erhalten Sie die Koordinaten:

LatLng center = mMap.getCameraPosition().target;

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X