Я обнаружил, что, изменив размер компонента MapView после небольшой задержки, я могу заставить сборщик пола в помещении отображаться на Android. Вот пример с функциональным компонентом.
Тот же принцип применим к компоненту класса, но вместо этого вы должны использовать setState ().
import React, { useState, useEffect } from 'react';
import { StyleSheet, View } from 'react-native';
import MapView, {
Polygon,
Polyline,
LatLng,
} from 'react-native-maps';
export const Overlays = () => {
const [currentMargin, setCurrentMargin] = useState(1);
useEffect(() => {
setTimeout(() => {
setCurrentMargin(0);
}, 1000);
}, []);
return (
<View style={styles.container}>
<MapView
style={{ marginBottom: currentMargin, ...StyleSheet.absoluteFillObject }}
showsIndoorLevelPicker={true}
showsMyLocationButton={true}
provider={"google"}
initialRegion={{
latitude: 45.497284367030844,
latitudeDelta: 0.0015644580909750516,
longitude: -73.5790109820664,
longitudeDelta: 0.0024069473147392273,
}}
>
</MapView>
</View >
);
}
const styles = StyleSheet.create({
container: {
...StyleSheet.absoluteFillObject,
justifyContent: 'flex-end',
alignItems: 'center',
},
map: {
...StyleSheet.absoluteFillObject,
}
});
export default Overlays;
Вот результат! Снимок экрана
Надеюсь, это поможет.