Android地图叠加

时间:2010-03-03 19:00:04

标签: android google-maps

如何在不同的缩放级别添加不同的叠加层?例如,我有一个节日区域的叠加图像,我已添加到地图上,这很棒。但是当用户缩小时我想要更改用户看到的图像。有人知道怎么做吗?

3 个答案:

答案 0 :(得分:2)

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

答案 1 :(得分: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);  

答案 2 :(得分:0)

如果您控制缩放按钮(通过拥有自己的按钮),您可以通过修改数组 mapView.getOverlays()然后调用 mapView.invalidate(只需更改显示的叠加层)来更改显示的叠加层( )

我没有经常尝试改变它,但它应该可以工作。