2016-11-15 4 views
2

Ich versuche, eine Markierung auf der mapbox Karte zu zeichnen. Das Problem ist, dass der Marker an seiner oberen linken Kante verankert ist. Ich möchte jedoch, dass dies in der Mitte unten ist. Obwohl Mapbox behauptet, dies sei das Standardverhalten, sehe ich es nicht.Android Mapbox MarkerViewOptions-Anker funktioniert nicht

Eine Sache, die ich bemerkte, ist, wenn ich den Standardmarker setze, dann ist es richtig verankert. Aber wenn ich ein markerview verwende, dann ist es oben links verankert. Ich habe versucht, den Ankerwert auf (0.5f, 1.0f) zu setzen, aber nichts passiert.

Dies ist der Code für Ihre Referenz. Jede Hilfe wird geschätzt.

 MarkerView userMarker = map.addMarker(new SampleMarkerViewOptions() 
       .position(stationLatLng) 
       .anchor(0.5f,1.0f)); 

Zu Referenzzwecken zeige ich die aktuelle Ansicht und die erwartete Ansicht, die nur mit der Standardmarkierung möglich ist.

Expected outcome. So far possible only using default marker.

Current outcome using markerview

Dank!

Antwort

0

Die Markerverankerung scheint bei benutzerdefinierten Markeransichten wie erwartet zu funktionieren. Können Sie klären, welche Version des SDK Sie verwenden, und versuchen Sie, den neuesten SNAPSHOT zu verwenden, um festzustellen, ob das Problem dadurch behoben wird. Sie verwenden möglicherweise auch ein Gerät mit Problemen mit der Markierung (grüner Hintergrund in der Ansicht).

enter image description here

Fügen Sie diese in der Ihre build.gradle Datei SNAPSHOT zu verwenden:

repositories { 
    mavenCentral() 
    maven { url "http://oss.sonatype.org/content/repositories/snapshots/"  } 
} 

dependencies { 
    compile ('com.mapbox.mapboxsdk:mapbox-android-sdk:[email protected]') { 
     transitive=true 
    } 
} 
+0

i i SDK 4.1.1 (com.mapbox.mapboxsdk bin mit erraten: MapBox-android-sdk: 4.1. 1 @ aar). Ich habe die Bedeutung des letzten SNAPSHOT nicht verstanden, kannst du das bitte erklären? Auch der grüne Hintergrund wurde von mir gesetzt, um das Ankerproblem hervorzuheben. – user1122549

+0

Ich habe meine Antwort aktualisiert, um zu zeigen, wie die Abhängigkeit zu SNAPSHOT geändert werden kann. – cammace

+0

Ich konnte Ihr Problem unter 4.1.1 reproduzieren. Sie haben einige Möglichkeiten, dieses Problem zu beheben. Aktualisieren Sie die Mapbox-Abhängigkeit entweder auf 4.2.0-beta.5 oder verwenden Sie den Build SNAPSHOT (nächtlich). Das Problem wurde in diesen Versionen behoben. Eine zweite Option wäre die Verwendung von Gl-Markierungen anstelle von Markierungsansichten. Ändern Sie einfach den Marker-Marker, um MarkerOptions anstelle von MarkerViewOptions zu verwenden. Der Nachteil der Verwendung von GL-Markern besteht darin, dass Sie nicht so viele Anpassungen vornehmen können, aber wenn Sie nur ein benutzerdefiniertes Markersymbol anzeigen, wäre diese Option für Ihren Anwendungsfall geeignet. – cammace