реагировать на родные карты удалить маркеры - PullRequest
0 голосов
/ 24 сентября 2018

В своем проекте я использовал карту реакции-натива.Работало нормально.затем я добавил несколько новых компонентов в проект, и внезапно, когда я удаляю пользовательские маркеры с карты, появляется красный экран:
удалить маркер: попытка вызвать виртуальный метод void com.google.android.gms.maps.model.setIcon (com.google.android.gms.maps.model.BitmapDescription) 'для пустой ссылки на объект enter image description here

1 Ответ

0 голосов
/ 12 ноября 2018

У вас есть два варианта:

Первый вариант (самый простой, но не даст наилучших результатов)

Использовать маркер по умолчанию:

<MapView.Marker
                identifier="DestMarker"
                title={SCHEDULED_LABEL}
                description={this.props.region.address}
                coordinate={{
                    latitude: this.props.region.latitude,
                    longitude: this.props.region.longitude,
                }}
            />

Второй вариант: отредактировать библиотеку response-native-maps

перейти к:

lib / android / src / main / java /com / airbnb / android / реакции / карты / AirMapMarker.java

внутри node_modules и измените эту строку кода

marker.setIcon(getIcon());

для этого:

if (marker != null) {
  marker.setIcon(getIcon());
}

и все готово!

Примечание: не забудьте переустановить приложение, чтобы увидеть ваши изменения

...