Сенсорный слушатель на Google Map Markers Android

Как я могу добавить прослушиватель Tab/Touch/Click на маркеры, которые у меня есть на моей карте Google в программе Android. Например, на изображении ниже у меня есть один маркер на картах Google, и когда я нажимаю, я хочу поднять тост, говорящий, что он был нажат

я пытался onMapClickListener но это не работает.

map.setOnMapClickListener(new GoogleMap.OnMapClickListener() {

    @Override
    public void onMapClick(LatLng point) {

    }
  }

2 ответа

Решение

Все маркеры в Google Android Maps Api v2 кликабельны. Вам не нужно устанавливать какие-либо дополнительные свойства для вашего маркера. Что вам нужно сделать - это зарегистрировать обратный вызов клика маркером в googleMap и обработать его в обратном вызове:

public class MarkerDemoActivity extends android.support.v4.app.FragmentActivity
implements OnMarkerClickListener{
private Marker myMarker;    

private void setUpMap()
{
    .......
    googleMap.setOnMarkerClickListener(this);

    myMarker = googleMap.addMarker(new MarkerOptions()
                .position(latLng)
                .title("My Spot")
                .snippet("This is my spot!")
                .icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_AZURE)));
    ......
}

@Override
public boolean onMarkerClick(final Marker marker) {

    if (marker.equals(myMarker)) 
    {
        //handle click here
    }
}

}

Использовать этот

map.setOnMarkerClickListener(new OnMarkerClickListener()
            {

                @Override
                public boolean onMarkerClick(Marker arg0)            
                         Toast.makeText(MainActivity.this, arg0.getTitle(),1000).show();// display toast
                    return true;
                }

            });    

Это поможет вам:)

Другие вопросы по тегам