使用引脚初始化地图,但不居中

时间:2014-01-09 15:24:34

标签: android google-maps google-maps-android-api-2

我有谷歌地图v2的应用程序,包含一个标记。加载地图时,我想将标记放在地图的顶部,而不是居中(例如x = mapWidth / 2,y = mapHeight / 4)。例如:

enter image description here

1 个答案:

答案 0 :(得分:1)

如果您知道地图的宽度和高度,可以使用投影查找相应的LatLng坐标:

public void setMarkerAtTop(GoogleMap map, int width, int height) {
    projection = map.getProjection();
    Point p = new Point(width / 2, height / 4);
    LatLng latLng = projection.fromScreenLocation(p);
    map.addMarker(new MarkerOptions().position(latLng));
}

如何获取宽度和高度取决于您使用的是MapView还是MapFragment。 对于View它只是getWidth和getHeight。对于MapFragment,首先使用getView。