Drehen Sie den Marker auf der Grundlage der Fahrtrichtung

Ich habe einen Marker in meiner Google Maps Karte, die so aussieht:

Pic

  • Wie generiere ich einen einzigartigen Hash-Code für String-Input in Android ...?
  • Konvertieren Sie Xamarin.Forms.Color auf Plattform spezifische Farbe
  • Steuern Sie den Standard-Musik-Player von Android oder einem anderen Musik-Player
  • Android-Aktivität, die nicht angezeigt wird, wenn der Bildschirm geweckt und der Bildschirm nicht deaktiviert wird
  • Es ist nicht möglich, LayoutInflater im benutzerdefinierten Adapter zu verwenden
  • Android Studio: Wie wähle man was von VCS importieren?
  • Wenn der Benutzer fährt, möchte ich ihn auf der Grundlage seiner Fahrtrichtung drehen. Wie kann ich das erreichen? Ich sollte vermutlich vorherigen Standort und aktuelle Standortkoordinaten zur Berechnung verwenden, aber ich habe keine Ahnung, wie.

  • Wie kann ich ein Video in Brotes von Bytes spielen?
  • System.loadLibrary () Fehler
  • Android bekommen Beschleunigungssensoren auf der Erde Koordinatensystem
  • Wie man Argumente an PhoneGap-Datenbank-Transaktionsfunktion übergibt
  • Zipalign 'wird nicht als interner oder externer Befehl erkannt
  • Die Methode showDialog (int) vom Typ Aktivität wird in Android veraltet?
  • One Solution collect form web for “Drehen Sie den Marker auf der Grundlage der Fahrtrichtung”

    Wenn Sie GPS für die Suche nach dem Benutzer verwenden, dann das Location das Sie in onLocationChanged enthält das Lager .

    Wenn Sie nur die beiden Koordinaten haben (zB haben Sie nur Koordinaten vom Netzplatzanbieter), können Sie Location.bearingTo() , um die Lagerung von zwei Koordinaten zu berechnen:

     Location prevLoc = ... ; Location newLoc = ... ; float bearing = prevLoc.bearingTo(newLoc) ; 

    Wenn du ein Lager hast, kannst du die Markierung der Markierung mit MarkerOptions.rotation() :

     mMap.addMarker(new MarkerOptions() .position(markerLatLng) .icon(BitmapDescriptorFactory.fromResource(R.drawable.map_marker)) .anchor(0.5f, 0.5f) .rotation(bearing) .flat(true)); 

    Du musst den Anker auf den Punkt stellen, den du drehen möchtest, und es ist auch der Punkt, an dem du an der Stelle sein möchtest, die du auf den Marker gesetzt hast. (0,5, 0,5) ist die Mitte des Bildes.

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.