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