Android-Java点中的点(android.graphics.point)不能应用于(Double, Double)
Android-Java Point(android.graphics.point) in Point cannot be applied to (Double, Double)
我正在使用 ArcGis 解决方案来获取用户的当前位置。每当我想要 getLongitude 和 getLatitude 时,它都会给出一个错误,即点无法转换为 Double。
如何解决这个问题?
Point curLocation;
final SpatialReference wm = SpatialReference.create(102100);
final SpatialReference egs = SpatialReference.create(4326);
public void onLocationChanged(Location location) {
if (location == null)
return;
boolean zoomToMe = (curLocation == null);
curLocation = new Point(location.getLongitude());
if (zoomToMe) {
Point p = (Point) GeometryEngine.project(curLocation, egs, wm);
mMapView.zoomToResolution(p, 5.0);
}
}
一个point有两个int作为参数。你传给它一个双打。您可以使用需要 2 个浮点数的 PointF,但即使这样也会丢失数据。
您是否正在使用另一个使用自定义点 class 的库(arcgis 在网络搜索中出现)?如果是这样,请确保您正在导入 the correct version of Point:
import com.esri.core.geometry.Point;
我正在使用 ArcGis 解决方案来获取用户的当前位置。每当我想要 getLongitude 和 getLatitude 时,它都会给出一个错误,即点无法转换为 Double。
如何解决这个问题?
Point curLocation;
final SpatialReference wm = SpatialReference.create(102100);
final SpatialReference egs = SpatialReference.create(4326);
public void onLocationChanged(Location location) {
if (location == null)
return;
boolean zoomToMe = (curLocation == null);
curLocation = new Point(location.getLongitude());
if (zoomToMe) {
Point p = (Point) GeometryEngine.project(curLocation, egs, wm);
mMapView.zoomToResolution(p, 5.0);
}
}
一个point有两个int作为参数。你传给它一个双打。您可以使用需要 2 个浮点数的 PointF,但即使这样也会丢失数据。
您是否正在使用另一个使用自定义点 class 的库(arcgis 在网络搜索中出现)?如果是这样,请确保您正在导入 the correct version of Point:
import com.esri.core.geometry.Point;