私はアンドロイドのグーグルマップ活動に小さなアイコンを描く簡単な方法を探しています。特別なことは何もありません。経度と緯度、およびその他のいくつかのプロパティを入力し、地図上の適切な位置にクリック可能な小さなアイコンとして表示したいと思います。クリックすると画面上に他のデータが表示されますが、まず、それらを地図上に描画する方法が必要です。
1 に答える
1
Overlay および ItemizedOverlay クラスを見てください。ItemizedOverlay が要件を満たしているようです。これを使用するための小さなチュートリアルがあります。Overlay では、より複雑な形状を描画できます。その draw() メソッドを独自のメソッドでオーバーライドするだけです。例えば:
public class Road extends Overlay {
//some your code...
@Override public void draw(Canvas canvas, MapView mapView, boolean shadow) { drawPath(mapView, canvas); }
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;
}
}
于 2012-09-17T07:16:24.743 に答える