В настоящее время я пытаюсь отобразить многоугольник на собственных картах реагирования только при нажатии определенного маркера.Я пытался отобразить круг для каждого события в моем списке, но это просто приводит к тому, что отображаются все круги, перекрывающиеся - см. Прикрепленное изображение
Я также попытался поместитьОбведите маркер и выноску, но это не похоже на работу.Подобно тому, как текст выноски отображается при нажатии на маркер, я также хочу отобразить круг / многоугольник вокруг него.Различные маркеры будут иметь различный радиус, связанный с ними.
Любая помощь приветствуется, спасибо!PS: у меня также есть ошибка на iOS, когда цвет заливки полигона просто иногда решает быть ничем.
(this.state.frenzyEventsList).map(event => (
<View key={event.id} >
<Marker
pinColor={"purple"}
coordinate={{latitude: parseFloat(event.loc_lat), longitude: parseFloat(event.loc_long)}}
title={event.name}
description={event.description}>
<Callout
alphaHitTest
tooltip
onPress={e => {
if (
e.nativeEvent.action === 'marker-inside-overlay-press' ||
e.nativeEvent.action === 'callout-inside-press'
) {
return ;
}
this.props.navigation.navigate('EventDetails', {
title: event.title,
description: event.description,
frenzyMode: event.frenzyMode,
});
}}
style={styles.customView}>
<CustomCallout>
<Text> {event.name} {event.radius} </Text>
</CustomCallout>
</Callout>
</Marker>
<Circle
ref={ref => { this.invitationRadius = ref; }}
key = {(this.props.frenzyRadius).toString() }
center = {{
latitude: parseFloat(event.loc_lat),
longitude: parseFloat(event.loc_long), }
}
radius = {parseFloat(event.radius)}
fillColor = {'#ffb3b3'}
strokeColor= {'#e80c25'}
strokeWidth = { 2 }
/>
</View>