Слушатель событий кнопки моего местоположения

Я включил слой моего местоположения Google Maps Android API v2, который добавляет плавающую кнопку для перехода к текущему местоположению пользователя. Мне нужен способ обнаружить нажатие на эту кнопку. Это возможно?


person Juliano Nunes Silva Oliveira    schedule 08.02.2013    source источник


Ответы (4)


Нет, в настоящее время нет возможности получить эту информацию. Для этого есть запрос на функцию, и он уже подтвержден Google.

Пометьте это, если вы хотите более быстрое исправление:

http://code.google.com/p/gmaps-api-issues/issues/detail?id=4789&q=apitype%3DAndroid2&colspec=ID%20Type%20Status%20Introduced%20Fixed%20Summary%20Stars%20ApiType%20Internal


Обходной путь:

Отключите встроенный элемент управления и создайте свой собственный вид и добавьте его на экран. Установите onClickListener для этой кнопки и анимируйте карту в соответствии с местоположением карты.

Отключите элемент управления по умолчанию:

UiSettings.setMyLocationButtonEnabled(false)

Получить мое местоположение с карты:

GoogleMap.getMyLocation()
person balazsbalazs    schedule 08.02.2013
comment
Это уже не так, Андроид обновился. См. Тони или мой ответ ниже. - person CyberEd; 17.06.2015

Поскольку этот вопрос был опубликован, Google обновил API. Они добавили слушателя onMyLocationButtonClick().

Чтобы добавить прослушиватель:

//add location button click listener
map.setOnMyLocationButtonClickListener(new GoogleMap.OnMyLocationButtonClickListener(){
    @Override
    public boolean onMyLocationButtonClick()
    {
        //TODO: Any custom actions
        return false;
    }
});

Возврат false по существу вызовет метод super. Возврата true не будет.

person CyberEd    schedule 16.06.2015

Последний августовский выпуск Google Maps android api V2 содержит метод прослушивания щелчков кнопки моего местоположения: onMyLocationButtonClick () Это можно использовать, чтобы узнать, когда пользователь нажал кнопку, и возвращает true, если слушатель воспользовался событием.

person tony m    schedule 02.09.2013

Это хорошо знать, поскольку я также задавался вопросом об этом. Теперь, есть ли способ узнать, включена ли служба определения местоположения Google, чтобы мы могли решить, хотим ли мы включить кнопку или нет? Нет смысла иметь кнопку, которая ничего не делает, поэтому обходной путь (отключение этой кнопки всегда) кажется единственным вариантом на данный момент.

person RasterOp    schedule 13.08.2013