Как сделать объект MapView прозрачным (альфа)? - PullRequest
0 голосов
/ 20 октября 2010

Все,

Мне нужно отобразить информацию об объекте MapView.Там нет проблем.

Проблема в том, что бывают случаи, когда объект MapView отображает детали карты, которые визуально конкурируют с моими данными наложения.

Итак, что я хотел бы сделать, это предоставить способ масштабированияобратно "объект MapView визуально с помощью альфа-канала.

Может ли альфа-значение быть применено к объекту MapView?Если да, то как?

В качестве альтернативы я думал, что, возможно, отдельное наложение всех черных может дать те же результаты.Масштабируйте альфа этого наложения, и я могу получить тот же общий эффект.

Проницательность, пожалуйста.

Спасибо.

Rich

1 Ответ

1 голос
/ 20 октября 2010

Вы уверены, что хотите это сделать?Возможно, было бы лучше вернуться к графическому дизайну вашего оверлея ... просто придание им более толстой границы может быть дешевым решением проблемы.

Первым предложением было бы создать подкласс 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
}
...