2010-03-03 163 views
1

如何在不同的缩放级别添加不同的覆盖图?例如,我有一个叠加的地图,这个地图添加了很好的地图。但是,当用户缩小我想改变用户看到的图像。有谁知道如何做到这一点?Android地图覆盖

回答

2

我能想到的唯一的事情就是当缩放级别在地图上发生变化时将缩放级别传递到叠加层中,然后决定在叠加层中绘制什么。

0

如果你控制的变焦按钮(具有自己的按钮),你可以简单地通过修改阵列调用MapView.getOverlays改变显示的叠加(),然后调用mapView.invalidate()

我没有试图频繁地改变它,但它应该可以工作。

+0

嗯,我不太清楚你的意思是什么? – SamB09 2010-03-07 16:40:28

1

我有同样的问题,但你可以做的是根据两个地点的差异来定义位图的大小,例如,

GeoPoint PointC = new GeoPoint((int)(35.496392 * 1E6), (int)(-97.5375950 * 1E6)); 
GeoPoint PointR = new GeoPoint((int)(35.496392 * 1E6), (int)(-97.5362690 * 1E6)); 
GeoPoint PointH = new GeoPoint((int)(35.696392 * 1E6), (int)(-97.5362690 * 1E6)); 
    Point poC = new Point(); 
    Point poR = new Point(); 
    Point poH = new Point(); 

    projection.toPixels(ovalR, poR); 
    projection.toPixels(ovalC, poC); 
    projection.toPixels(ovalH, poH); 

    cWidth = Math.abs(poC.x-poR.x); 
    cHieght = Math.abs(poC.y-poH.y); 

Bitmap bitmap= Bitmap.createScaledBitmap(mBitmap, cWidth, cHeight, true);