gpt4 book ai didi

react-native - 设置mapView的边界

转载 作者:行者123 更新时间:2023-12-03 14:30:38 37 4
gpt4 key购买 nike

我有一个调用api并返回位置列表的应用程序。

返回数据后,我将JSON转换为用于注释的映射点。

这些都毫无问题地添加到了ma中。

我遇到的问题是设置 map 的边界。我似乎无法弄清楚。

我当前拥有的代码是。

_handleResponse(response) {              
var locations = [];
// Loop through repsone and add items to an arra for annotations
for (var i = 0; i < response.length; i++) {
// Get the location
var location = response[i];
// Parse the co ords
var lat = parseFloat(location.Latitude);
var lng = parseFloat(location.Longitude);
// Add the location to array
locations.push({
latitude: lat,
longitude: lng,
title: location.Name
});
}

// This calls the map set state
this.setState({
annotations: locations
});
}

这是我的查看代码
<View style={styles.container}>
<MapView
style={styles.map}
onRegionChangeComplete={this._onRegionChangeComplete}
annotations={this.state.annotations}
/>
</View>

最佳答案

你会想要

<MapView
...
region={region}
/>

在哪里
var region = {
latitude,
longitude,
latitudeDelta,
longitudeDelta,
};
latitudelongitude是 map 的中心,而deltas是所示的最小和最大纬度/经度之间的距离(以度为单位)。例如,给定围绕点的特定半径(以英里为单位)和 map View 的长宽比,您可以按以下方式计算 region:
var radiusInRad = radiusInKM / earthRadiusInKM;
var longitudeDelta = rad2deg(radiusInRad / Math.cos(deg2rad(latitude)));
var latitudeDelta = aspectRatio * rad2deg(radiusInRad);
rad2degdeg2radearthRadiusInKM的定义留给读者练习。

关于react-native - 设置mapView的边界,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30606827/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com