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

时间:2010-10-20 15:14:34

标签: android transparency android-mapview transparent alpha

所有

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

问题在于,MapView对象有时会显示与我的叠加数据在视觉上竞争的地图详细信息。

所以,我想做的是提供一种通过使用alpha通道“缩小”MapView对象的方法。

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

或者,我在想,也许单独的全黑覆盖可能会提供相同的结果。缩放此叠加层的alpha值,我可能会得到相同的整体效果。

洞察力。

感谢。

1 个答案:

答案 0 :(得分: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
}