我正在尝试限制正在制作的应用程序的最大缩小。问题是,即使我设置了非常有限的缩放限制,用户仍然可以根据需要进行放大和缩小。我对Expo应用程序还比较陌生,所以对于react-native-maps
库,可能只是我不了解。
这是我的地图的render()
方法的外观:
render() {
return (
<MapView
style={styles.mapStyle}
region={this.state.region}
provider="google"
zoomEnabled={false}
minZoomLevel={18}
maxZoomLevel={20}
showsMyLocationButton={true}
showsUserLocation={true}
/>
)
}
我有适当的逻辑将地图放在用户的位置上(未显示-在componentDidMount()
中进行了处理),但是此处的缩放限制似乎并没有超出地图的初始呈现效果。用户缩小后,天空便是极限-如果愿意,他们可以缩小以查看整个世界。这对于我的应用程序不是很有用,因此我想使这些限制起作用(或者至少更好地了解其工作原理)。预先感谢!
答案 0 :(得分:0)
经过大约6分钟的挖掘(/ facepalm),我发现我在搞砸。 “问题”是我不了解这些Zoom值是如何工作的。有点奇怪,但总的来说:
0
是“最接近”的水平变焦,但实际上它是最远的此修复程序使我能够使地图阻止用户缩小到“最远”缩放级别;就我而言,我使用的是minZoomLevel
中的10
,它是关于大城市及其周围地区的。我正在使用maxZoomLevel
中的20
,这是“尽可能近的”缩放级别。
此外,我需要删除zoomEnabled={false}
-这是我在较早的代码中反复浏览的一个障碍-此设置可以防止所有缩放互动(并且也绊倒了我,直到我记得删除它)。< / p>
希望这对其他人有帮助!