Можете ли вы настроить маркер текущего местоположения в родных картах реагирования?

Я хотел бы использовать пользовательское изображение маркера вместо пульсирующей синей точки - есть ли способ настроить это в ответных нативных картах, используя карты Apple для ios и карты Google для Android?


person MonkeyBonkey    schedule 07.05.2018    source источник


Ответы (2)


Насколько я знаю, вы не можете изменить точку текущего местоположения по умолчанию. Обходной путь заключается в том, чтобы передать местоположение пользователя в <Marker /> с вашим пользовательским изображением и отключить showsUserLocation, чтобы скрыть синюю точку по умолчанию. Вот документация по маркеру.

Затем вы можете отслеживать местоположение пользователя с помощью Geolocation.watchPosition. Если вы установите местоположение пользователя в состояние, оно вызовет повторную визуализацию при перемещении пользователя.

person Phil Mok    schedule 07.05.2018
comment
круто, но это не будет обновляться по мере того, как пользователь перемещается, если я сам постоянно не обновляю его, правильно? - person MonkeyBonkey; 08.05.2018
comment
@MonkeyBonkey вы можете отслеживать местоположение пользователя, используя Geolocation.watchPosition. facebook.github.io/react-native/docs/geolocation.html Если вы установите местоположение пользователя в состояние, оно вызовет повторную визуализацию при перемещении пользователя. - person Phil Mok; 08.05.2018

Вы можете создать собственный маркер и подключить прослушиватель событий, чтобы отслеживать пользователя и обновлять местоположение маркера по мере перемещения вашего пользователя.

Этот прослушиватель событий доступен в рамках. https://facebook.github.io/react-native/docs/geolocation.html#watchposition

person Carlos Guillen    schedule 08.05.2018