2010-10-20 68 views
0

全部,如何使MapView对象透明(alpha)?

我需要在MapView对象上显示信息。那里没有问题。

问题是有时候MapView对象显示地图细节,这些地图细节在视觉上与我的覆盖数据竞争。

所以,我想要做的是提供一种方法来通过使用alpha通道可视化缩放MapView对象。

alpha值可以应用于MapView对象吗?如果是这样,怎么样?

另外,我在想,也许一个单独的全黑覆盖可能会提供相同的结果。缩放这个覆盖图的alpha值,我可能会得到相同的整体效果。

请详见。

谢谢。

Rich

回答

1

您确定要这样吗?重新审视你的覆盖层的图形设计可能会更好......简单地给他们一个更厚的边界可能是一个便宜的解决方案。

第一个建议是有这样的子类MapView类,并覆盖dispatchDraw():

@Override protected void dispatchDraw(Canvas canvas) { 

    // Firstly let MapView draw 
    super.dispatchDraw(canvas); 

    // Draw a translucent fill on top of it 
    canvas.drawColor(0x7FFFFFFF); 

    // TODO: Draw my overlay 
} 
+0

图形设计(覆盖)是很好设置,所以这是一个较小的选项。事实上,真正的问题是图标文本标签:这些与MapView细节“冲突”。因此需要AlphaView的MapView。谢谢。 – richbl 2010-10-22 21:32:59