Сенсорный слушатель на 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;
}
});
Это поможет вам:)