Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/185.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将LatLng转换为与Android屏幕兼容的像素_Android_Google Maps_Google Maps Api 3 - Fatal编程技术网

将LatLng转换为与Android屏幕兼容的像素

将LatLng转换为与Android屏幕兼容的像素,android,google-maps,google-maps-api-3,Android,Google Maps,Google Maps Api 3,我有一个谷歌地图图像,其中标记了一个位置,例如“纽约”&我使用谷歌地图javascript API V3的javascript示例将其纬度和经度转换为像素 但问题是锚定偏移,因为我希望像素根据Android屏幕进行转换。所以基本上,我想实现的是,如果我在谷歌地图图像上有位置(lat,lng),我想把它转换成android屏幕的(X,Y)坐标。如果你使用MapView,那么你可以调用如下内容: //Get map projection Projection projection = mapView

我有一个谷歌地图图像,其中标记了一个位置,例如“纽约”&我使用谷歌地图javascript API V3的javascript示例将其纬度和经度转换为像素


但问题是锚定偏移,因为我希望像素根据Android屏幕进行转换。所以基本上,我想实现的是,如果我在谷歌地图图像上有位置(lat,lng),我想把它转换成android屏幕的(X,Y)坐标。

如果你使用MapView,那么你可以调用如下内容:

//Get map projection
Projection projection = mapView.getProjection();

//Convert LatLng to on screen location
Point p1 = new Point();
//projection.toPixels(gp, p1);
p1 = projection.toScreenLocation(location);

其中,
位置
为板条。由于点
p1
包含屏幕位置,屏幕位置以屏幕像素(不是显示像素)表示,相对于地图的左上角(不是整个屏幕)。

我正在将Google地图渲染到WebView中,因此我没有使用MapView,有其他方法吗?我使用的是Projection类,但没有toPixels方法,我使用的是错误的类吗?如果是,正确的答案是什么?@ademar111190刚刚编辑了答案,帖子已经快5年了,所以api一定在某个时候发生了变化。