Android アプリケーションをバージョン 1 からバージョン 2 の Android Google マップ API にアップグレードしています。バージョン 1 のコードでは、次のように draw() メソッドをオーバーライドすることで、ItemizedOverlay のサブクラスでマップ上にテキストを直接描画できました。描画したいテキストは動的で、各マップ マーカーの横に表示したい追加のテキスト アイテムであるため、さまざまなシンボルがプロット/削除されるたびに、テキストが頻繁に追加/削除されます。
@Override
public boolean draw(Canvas canvas, MapView mapView, boolean shadow,
long when) {
if (!shadow) {
canvas.drawText("some text", (float) point.x + TextOffsetX , (float) point.y + TextOffsetY, m_paint);
}
return super.draw(canvas, mapView, shadow, when);
}
ただし、これはバージョン 2 の API では不可能のようです。実際には ItemizedOverlays の概念はなく、何もサブクラス化できません。新しい API バージョンで GoogleMap にテキストを描画する方法はありますか?