根据半径公里/英里放大/缩小反应本机贴图

问题描述

我在我的本机应用程序中有一个要求,如果用户提供的数字将是公里或英里数(例如5或10),则地图应放大/缩小以显示半径范围作为输入号码。

如何根据这些输入数字来更改latitudeDelta和longitudeDelta值。

请帮帮我。预先感谢。

解决方法

latitudeDelta是屏幕上可见的度数。大约111.045 KM始终等于1度,因此您可以使用此方法计算KM中当前可见区域的纬度Delta

latitudeDelta =直径(用户输入)/ 111.045

这是假设屏幕处于纵向模式,因此latitudeDelta是较大的值。如果不是,请改用longitudeDelta。

要更新地图,您可以为longitudeDelta和latitudeDelta设置状态变量,当用户输入值时,您可以根据上述公式进行计算并更新这些状态变量,地图最终也会更新。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...