Как задать прозрачный фон в SurfaceView? Android

154
02 сентября 2018, 20:30

В приложении имеется view с графиком, поверх которой располагается другая view, потомок SurfaceView. На SurfaceView предполагается возможность рисования различных объектов так, чтобы они находились поверх графика.

В данный момент в конструкторе SurfaceView вызываются методы:

setZOrderOnTop(true);
getHolder().setFormat(PixelFormat.TRANSPARENT);

Проблема заключается в том, что с использованием метода setZOrderOnTop любой нарисованный объект начинает рисоваться поверх всего (например нарисованная фигура будет отображается не только поверх графика, но и поверх боковой менюшки, если её вызвать). Если не использовать setZOrderOnTop или вместо него прописать setZOrderMediaOverlay, то данной проблемы не возникнет, однако SurfaceView вместо прозрачного фона будет иметь однотонно чёрный.

Answer 1

Очевидно, из-за специфики SurfaceView всё же не удастся сделать прозрачный фон, без размещения вьюшки поверх всего окна. Остаётся просто скрывать её при вызове менюшки :)

READ ALSO
POST запрос не отправляется на сервер

POST запрос не отправляется на сервер

У меня возникли проблемы с отправкой JSON на сервер, в логах видна следующая ошибка: W/Systemerr: java

174
Нельзя добавить файл в SVN в Intellij idea

Нельзя добавить файл в SVN в Intellij idea

Есть svn сервер в интернетеОткрыл idea, сделал checkout

166
Распознавание свиста

Распознавание свиста

Недавно узнал о приложениях для android, с помощью которых можно найти телефон свистомТы свистишь, а телефон начинает пищать

184
Java jetty перегрузка

Java jetty перегрузка

использую jetty для back-endдо этого писал небольшие проекты, а сейчас хочу перейти на новый уровень

181