我有以下代码在指定的x / y屏幕坐标处绘制标记。像这样...
public boolean draw(Canvas canvas, MapView mapView,
boolean shadow, long when)
{
super.draw(canvas, mapView, shadow);
//---translate the GeoPoint to screen pixels---
Point screenPts = new Point();
mapView.getProjection().toPixels(p, screenPts);
//---add the marker---
Bitmap bmp = BitmapFactory.decodeResource(
getResources(), R.drawable.marker);
canvas.drawBitmap(bmp, screenPts.x, screenPts.y-50, null);
System.out.println("X: " + screenPts.x + "Y: " + screenPts.y);
return true;
}
但API中是否存在基于lat / lng绘制点的已知方法?
答案 0 :(得分:0)
一种解决方案是使用点(小圆圈)创建位图图像,并将此图像用作标记。然后你可以保持你的代码不变。
您可以使用任何Drawable
作为标记。这篇关于Drawable Resources的文章可以帮助您找到点标记的最佳拟合实现。