Не знаю, полезно ли это в данный момент, но мне удалось получить нечто похожее на то, что вы хотите ...
Мне нужно было поместить VideoView поверх SurfaceView; до тех пор, пока они не перекрывают 100%, это может работать. (что я имею в виду, мой просмотр поверхности - это весь экран, а просмотр видео - лишь небольшая часть экрана)
Дело в том, что, поскольку вы не можете создавать SurfaceViews, первым будет показан пиксель, который будет отображаться. Интуитивность приведет вас к Z-упорядочению вашего приоритетного представления ПОСЛЕ менее важного в XML - но, как я уже говорил ранее, первый, который захватывает пиксели, остается, поэтому убедитесь, что вы определили сначала меньшее представление, а затем наложите его на больший.
Это приведет к такому поведению, что меньший (в моем случае предварительный просмотр) получит упомянутые пиксели X * Y, а затем «поверхностный» вид поверхности (который должен быть поверх него в соответствии с XML) принимает до остальных и игнорирует меньшую поверхность.
Я не слишком уверен в обработке событий от этих двух, хотя мне нужно только воспроизводить потоки в этих двух представлениях и не реагировать на какие-либо клики / события, генерируемые этими двумя компонентами, но можно ожидать, что если вы пошли по этому пути - более крупный вид будет перехватывать все клики, сделанные в меньшей области просмотра (потому что он находится сверху в соответствии с XML), поэтому, возможно, вам придется программно перемещать его сверху также при создании.
Надеюсь, это поможет.
EDIT:
Хотя ... похоже, он работает только один раз. Это действительно работа в процессе. По возвращении из любого занятия я ничего не могу сделать, чтобы не дать большему представлению претендовать на все: /