- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 react-native-maps。我正在使用折线显示从源到目的地的方向。但它没有与屏幕中心对齐。缩放也不合适。
如何正确缩放 map 以在屏幕中央正确显示方向。
这是我的代码:
const ASPECT_RATIO = width / height;
const LATITUDE = 40.7128;
const LONGITUDE = 74.0060;
const LATITUDE_DELTA = 0.0012;
const LONGITUDE_DELTA = LATITUDE_DELTA * ASPECT_RATIO;
this.state = {
region: {
latitude: LATITUDE,
longitude: LONGITUDE,
latitudeDelta: LATITUDE_DELTA,
longitudeDelta: LONGITUDE_DELTA,
}
}
<MapView
provider={PROVIDER_GOOGLE}
style={StyleSheet.absoluteFillObject}
region={this.state.region}>
<MapView.Polyline
coordinates={direction}
strokeWidth={4}
strokeColor="#000"/>
</MapView>
提前致谢
最佳答案
我能够缩放 map 以使坐标适合屏幕。
这是代码:
const { width, height } = Dimensions.get('window');
const ASPECT_RATIO = width / height;
const LATITUDE = 37.78825;
const LONGITUDE = -122.4324;
const LATITUDE_DELTA = 0.0922;
const LONGITUDE_DELTA = LATITUDE_DELTA * ASPECT_RATIO;
const SPACE = 0.01;
function createMarker(modifier = 1) {
return {
latitude: LATITUDE - (SPACE * modifier),
longitude: LONGITUDE - (SPACE * modifier),
};
}
const MARKERS = [
createMarker(),
createMarker(2),
createMarker(3),
createMarker(4),
];
const DEFAULT_PADDING = { top: 40, right: 40, bottom: 40, left: 40 };
class FitToCoordinates extends Component {
fitPadding() {
this.map.fitToCoordinates([MARKERS[2], MARKERS[3]], {
edgePadding: { top: 100, right: 100, bottom: 100, left: 100 },
animated: true,
});
}
fitBottomTwoMarkers() {
this.map.fitToCoordinates([MARKERS[2], MARKERS[3]], {
edgePadding: DEFAULT_PADDING,
animated: true,
});
}
fitAllMarkers() {
this.map.fitToCoordinates(MARKERS, {
edgePadding: DEFAULT_PADDING,
animated: true,
});
}
render() {
return (
<View style={styles.container}>
<MapView
ref={ref => { this.map = ref; }}
style={styles.map}
initialRegion={{
latitude: LATITUDE,
longitude: LONGITUDE,
latitudeDelta: LATITUDE_DELTA,
longitudeDelta: LONGITUDE_DELTA,
}}
>
{MARKERS.map((marker, i) => (
<MapView.Marker
key={i}
coordinate={marker}
/>
))}
</MapView>
<View style={styles.buttonContainer}>
<TouchableOpacity
onPress={() => this.fitPadding()}
style={[styles.bubble, styles.button]}
>
<Text>Fit Bottom Two Markers with Padding</Text>
</TouchableOpacity>
<TouchableOpacity
onPress={() => this.fitBottomTwoMarkers()}
style={[styles.bubble, styles.button]}
>
<Text>Fit Bottom Two Markers</Text>
</TouchableOpacity>
<TouchableOpacity
onPress={() => this.fitAllMarkers()}
style={[styles.bubble, styles.button]}
>
<Text>Fit All Markers</Text>
</TouchableOpacity>
</View>
</View>
);
}
}
关于react-native - 使用 latitudeDelta 和 longitudeDelta 缩放 map ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48220991/
有谁知道根据搜索半径计算 MapView 区域的正确纬度增量/经度增量的数学方法?例如,我为用户提供了在 5、10、25、50 和 100 英里半径范围内搜索项目的选项。我希望 MapView 区域能
我正在尝试在应用程序中实现从源到目的地的 map 导航。我只想根据中心坐标动态计算 latitudedelta 和 longitudedelta。 let midLat = (self.source.
在 react native mapview 的示例中它们有 latitudeDelta 和 longitudeDelta。它等于高度和宽度吗?在什么单位?根据他们的github comment ,
我根据 2 点 latitude 和 longitude 之间的设定距离从后端 (laravel) 请求数据,例如。 Lat= 78.3232 and Long = 65.3234 and dista
我根据 2 点 latitude 和 longitude 之间的设定距离从后端 (laravel) 请求数据,例如。 Lat= 78.3232 and Long = 65.3234 and dista
我正在使用 react-native-maps。我正在使用折线显示从源到目的地的方向。但它没有与屏幕中心对齐。缩放也不合适。 如何正确缩放 map 以在屏幕中央正确显示方向。 这是我的代码: cons
我用大react-native-maps来自 Airbnb 上的 react-native应用程序。 我在 JSON 文件中得到了一个标记列表,其中每个标记都有一个属性 zoom这是标记应在 map
我需要帮助来在 Android 版 Titanium map 中显示正确的缩放级别。 我显示的是从当前位置到其他位置的路线。每次距离都不同。我是否可以根据距离计算 latitudeDelta 和 lo
我有一个缩放级别zoom=Z和一个位置latitude=x,longitude=y,但我需要设置区域包含 latitude、longitude、latitudeDelta 和 longitudeDel
我有这些数据,我也想获取latitudeDelta/longitudeDelta geometry:{ location:{ lat:35.7212504, l
我有这些数据,我也想获取latitudeDelta/longitudeDelta geometry:{ location:{ lat:35.7212504, l
我正在尝试使用 select 在组件中动态设置半径值。半径的初始值设置为“500”,当我将其更改为“1000”时,圆的半径会发生变化,但当我再次选择“500”时,没有任何反应。 此外,如何控制 map
我是一名优秀的程序员,十分优秀!