Mapbox click auf den title eines markers

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • Mapbox click auf den title eines markers

    hallo,
    ich mache gerade meine ersten versuche mit mapbox,
    hat alles soweit ganz gut funtioniert, ich habe meinen ersten marker, wenn man clickt wird der titel angezeigt.

    nun habe ich aber einen listener auf den marker der dann eine neue activity öffnet usw...
    das problem ist, es geht der onclick aber der titel wird davor nicht mehr angezeigt....

    ich möchte aber, dass beim ersten click der titel angezeigt wird (so wie es ohne den listener geht) und dann mit click auf den titel alles weitere funktioniert.

    mein code soweit...

    Quellcode

    1. mapView.getMapAsync(new OnMapReadyCallback() {
    2. public void onMapReady(MapboxMap mapboxMap) {
    3. mapboxMap.addMarker(new MarkerOptions()
    4. .position(new LatLng(50.14819, 11.229458))
    5. .title("Tinos Haus"));
    6. mapboxMap.setStyle(Style.MAPBOX_STREETS, new Style.OnStyleLoaded() {
    7. public void onStyleLoaded(Style style) {
    8. // Map is set up and the style has loaded. Now you can add data or make other map adjustments
    9. }
    10. });
    11. mapboxMap.setOnMarkerClickListener(new MapboxMap.OnMarkerClickListener() {
    12. public boolean onMarkerClick(@NonNull Marker marker) {
    13. Toast.makeText(MainActivity.this, marker.getTitle(), Toast.LENGTH_LONG).show();
    14. //Intent explicitIntent = new Intent(MainActivity.this, HillShadeActivity.class);
    15. //startActivity(explicitIntent);
    16. return true;
    17. }
    18. });
    19. }
    20. });
    Alles anzeigen



    danke für ideen
    gruss
    Tino
  • Hallo ich arbeite eigentlich nicht mit der MapBox.
    Kann da auch nicht viel sagen.
    Für mich sieht es aber so aus als ob du den KlickListner auf die MapBox setzt und nicht auf den Marker.
    mapboxMap.setOnMarkerClickListener(….
    Das müsste eigentlich nach meinem Verständnis der Merker sein. Und nicht die ganze Box.
    Nur hast du für dem Merker gar keine Variable erstellt. Um dann den Listner zu setzen.
    Ein Feedback auf Tipps ist auch schön. :P
  • hallo,

    ich dachte dafür ist die onMarkerClick() methode darin, die ja auch funktioniert, nur wird leider der titel dann nicht mehr angezeigt,
    meine wunschreihenfolge wäre halt: ich click den marker, sehe dann den title (bei mir der name eines felsens) und wenn es der richtige ist clicke ich dann auf den namen(title)
    und mache meine neue activity dieses felsens auf.

    es müsste sowas wie einen onclick listener auf den titel eines markers geben ?

    gruss
    Tino
  • hallo,

    das auslösen der normalen titels, hier "Tinos Haus" ist doch vorimplementiert, das geht ohne listener einfach wenn ich auf den bei mir standard roten punkt klicke, dann
    erscheint der titel darüber.
    jetzt wenn ich die listener dazu-schreibe, funktionieren diese, aber der titel wird nicht mehr angezeigt, was schade ist, denn nur anhand des titels sehe ich ja was ich dann anklicke.

    tino
  • OK
    Dann versuche doch mal auch die Methode der Superklasse aufzurufen die du überschrieben hast.
    Oder gebe doch mal false zurück damit der original listner aufgerufen wird.


    developers.google.com/android/…Map.OnMarkerClickListener
    • true if the listener has consumed the event (i.e., the default behavior should not occur); false otherwise (i.e., the default behavior should occur). The default behavior is for the camera to move to the marker and an info window to appear.
    Ein Feedback auf Tipps ist auch schön. :P

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von jogimuc ()

  • hallo,
    das ist genau der punkt, ich möchte einen klick auf den titel machen....

    habs jetzt anders gemacht, ich geben den namen in einem extra textview aus und mache darauf einen onclicklistener. das geht, optisch schöner wäre der click auf den titel des markers,
    da dieser in der position im passend oberhald des markers ist.

    falls es dazu noch einen gute lösung gibt, danke, ansonsten lass ich es so

    gruss
    Tino