Добавление слушателя на карту Google


В Xamarin как добавить OnInfoWindowClickListener на карту Google?

Я читал, что:

Вы можете использовать OnInfoWindowClickListener для прослушивания событий click on информационное окно. Чтобы установить этот прослушиватель на карте, вызовите Расчет.setOnInfoWindowClickListener (OnInfoWindowClickListener). Когда пользователь нажимает на информационное окно, onInfoWindowClick (маркер) будет называться

Ресурс является здесь: https://developers.google.com/maps/documentation/android/infowindows

Это код интерфейса, который я добавил:

public interface onInfoWindowClickListener {
    void onInfoWindowClick(Marker marker);
}

Я добавил Этот метод:

public void onInfoWindowClick(Marker marker)
{
    //Toast.MakeText (MapWithMarkersActivity.this, String.Format ("InfoWindow is Clicked"), ToastLength.Short).Show ();
}

Я получаю ошибку в этой строке кода:

_map.SetOnInfoWindowClickListener (new onInfoWindowClickListener());

Ошибка такова:

Не удается создать экземпляр абстрактного класса или интерфейса 'onInfoWindowClickListener'

Не могли бы вы мне помочь?

Заранее спасибо

1 2

1 ответ:

Взгляните на Xamarin Docs for Google Maps. Это должно показать вам, как именно настроить прослушиватель кликов.

Вот код, который вы хотели бы реализовать, чтобы ваше информационное окно было обработано правильно. ключевая строка - _map.InfoWindowClick += MapOnInfoWindowClick; .

private bool SetupMapIfNeeded()
{
    if (_map == null)
    {
        _map = _mapFragment.Map;
        if (_map != null)
        {
            _map.InfoWindowClick += MapOnInfoWindowClick;
            return true;
        }
        return false;
    }
    return true;
}


private void MapOnInfoWindowClick (object sender, GoogleMap.InfoWindowClickEventArgs e)
{
    Marker myMarker = e.P0;
    // Do something with marker.
}