我有以下代码在指定的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绘制点的已知方法中是否有任何内容?

最佳答案

一种解决方案是创建一个带有点(小圆圈)的位图图像,并将该图像用作标记。然后,您可以按原样保留代码。

您可以使用任何Drawable作为标记。 Drawable Resources上的这篇文章应该可以帮助您找到最适合点标记的实现。

关于java - Google map ,基于lat/lng值绘制标记,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3530739/

10-10 03:24