【发布时间】:2012-09-17 15:42:11
【问题描述】:
我正在寻找一种在 android 的 Google 地图活动上绘制小图标的简单方法。没什么特别的,我只是想把经度和纬度和其他一些属性放在地图上的适当位置上作为一个可点击的小图标。单击时,它会在屏幕上显示一些其他数据,但首先,我需要一种方法将它们绘制到地图上。
【问题讨论】:
标签: android google-maps-markers clickable-image
我正在寻找一种在 android 的 Google 地图活动上绘制小图标的简单方法。没什么特别的,我只是想把经度和纬度和其他一些属性放在地图上的适当位置上作为一个可点击的小图标。单击时,它会在屏幕上显示一些其他数据,但首先,我需要一种方法将它们绘制到地图上。
【问题讨论】:
标签: android google-maps-markers clickable-image
看看 Overlay 和 ItemizedOverlay 类。 看来 ItemizedOverlay 符合您的要求。 Here 是使用它的小教程。 在 Overlay 上,您可以绘制更复杂的形状 - 只需用您的覆盖它的 draw() 方法。 例如:
public class Road extends Overlay {
//some your code...
@覆盖 public void draw(Canvas canvas, MapView mapView, boolean shadow) { 绘制路径(地图视图,画布); }
private void drawPath(MapView mv, Canvas canvas) {
int x1 = -1;
int y1 = -1;
int x2 = -1;
int y2 = -1;
Point point = new Point();
for (int i=0; i < list.size(); i++) {
mv.getProjection().toPixels(list.get(i), point);
x2 = point.x;
y2 = point.y;
if (i > 0) {
canvas.drawLine(x1, y1, x2, y2, paint);
}
x1 = x2;
y1 = y2;
}
}
【讨论】: