在Android平台上操纵谷歌地图中的阴影

时间:2011-06-08 15:42:36

标签: android google-maps transparency dropshadow

我正在使用适用于Android的Google Maps api,添加地图标记时会自动添加阴影。

现在我遇到的问题是我使用的标记之一是黑色,投影也是纯黑色,所以看起来很丑,因为投影和实际标记之间没有区别更多。

有没有办法对此做些什么?我喜欢阴影,并希望保留它们。大多数时候,他们确实增加了整体外观。只是在那种情况下没有。我希望找到一种方法,在标记周围添加单像素白/灰线,投影接触标记,或使投影有点透明而不是纯黑。

为了使我的设备(Android 2.2)更糟糕(?),投影的透明度不是恒定的,而是在变焦时变化。有时它应该是非常透明的(然后它看起来很好),但大多数时候它变成完全黑色。

1 个答案:

答案 0 :(得分:1)

如果你不喜欢它的呈现方式,我会在Photoshop中禁用阴影并创建自己的标记图像的一部分。为此,请在覆盖子类中执行此操作:

    @Override
    public void draw(final Canvas canvas, final MapView mapView, final boolean shadow) {
        // Don't draw the shadow layer
        if (!shadow) {
            super.draw(canvas, mapView, shadow);
        }
    }

或者,如果您想要使用绘图API,可以使用相同的方法绘制自己的自定义阴影图层,但事先将阴影粘贴到标记图像中可能更容易。