react-native-yamap
react-native-yamap copied to clipboard
При множестве маркеров не выбирается нужный на Android
@ownikss Замечен баг на android, если кликать на нужный маркер то координаты резко меняются на другие, то есть после клика выбирается координат маркера верно но после этого будто происходит еще один невидимый клик по карте который перебивает координаты выбранного маркера. Такое происходит только на android. Если вместо onPress у Marker использовать onLongPress то все нормально работает, но в моем случае onLongPress не актуален так как нужна моментальная обработка клика. Есть идеи почему это может быть? z-index у Marker тоже пробовал выставить, не помогает(
@Metallistener нашел решение?
баг на android, @ownikss. Недавно обнаружил тоже самое, есть у кого нибудь решение проблемы? Android отрабатывает в несколько кликов. По IOS - все нормально. Могу предположить, что Android не понимает zIndex, насколько знаю android воспринимает только elevation.
@Metallistener @youngblader @aylok1n Удалось найти решение проблемы ?
@wfrsnk нет, проект провалили, денег не получили. Библа топ)
Here is the workaround:
const [lastMarkerClickTimestamp, setLastMarkerClickTimestamp] = useState(Date.now());
<YMarker
// props
onPress={() => {
const now = Date.now();
if (now - lastMarkerClickTimestamp < 300) return; // 300 ms is fine, but tuneable
setLastMarkerClickTimestamp(now);
onPressMarker(marker);
}}>
// children
</YMarker>
Feel free to use.
на реальном устройстве не работает, в эмуляторе работает
Here is the workaround:
const [lastMarkerClickTimestamp, setLastMarkerClickTimestamp] = useState(Date.now()); <YMarker // props onPress={() => { const now = Date.now(); if (now - lastMarkerClickTimestamp < 300) return; // 300 ms is fine, but tuneable setLastMarkerClickTimestamp(now); onPressMarker(marker); }}> // children </YMarker>
Feel free to use.