/ / Wie UI Widgets über mehrere Z geordnete Oberflächenansichten in Android platzieren - Android, Android-Layout, Oberflächenansicht

Wie man UI Widgets auf mehrere Z geordnete Oberflächenansichten in Android - Android, Android-Layout, Oberflächenansicht platzieren

ich habe 2 SurfaceViews und 1 button und sie müssen auf ähnliche Weise wie der beigefügte Screenshot angeordnet werden. Ich konnte es schaffen SurfaceView B oben drauf sein SurfaceView A durch anruf surfaceViewB.setZOrderOnTop(true);

Das Problem ist, dass, sobald ich das mache, SurfaceView B ist über dem eigentlichen Fenster platziert und ich bin nicht mehr in der Lage, den Button darüber zu bekommen (zB aufrufend button.bringToFront() ist hier nutzlos).

Irgendeine Idee, wie dieses Layout erreicht werden könnte?Bildbeschreibung hier eingeben

Antworten:

1 für die Antwort № 1

Sie können verwenden setZOrderMediaOverlay(boolean) Platzieren Sie SurfaceView B über SurfaceView A, aber immer noch hinter dem Fenster. Aus der Dokumentation: Verknüpfung:

public void setZOrderMediaOverlay (boolean isMediaOverlay)

Kontrollieren Sie, ob die Oberfläche der Oberflächenansicht platziert ist über einem anderen regelmäßige Oberflächenansicht im Fenster (aber immer noch hinter dem Fenster selbst). Dies wird normalerweise verwendet, um Overlays über einem zu platzieren darunterliegende Medienoberflächenansicht.

Beachten Sie, dass dies vor dem Fenster der Oberflächenansicht festgelegt werden muss ist an den Fenstermanager angehängt.

Durch diesen Aufruf wird jeder vorherige Aufruf von setOrOrderOnTop (boolean) überschrieben.

Folgendes sollte für Sie funktionieren:

surfaceViewB.setZOrderMediaOverlay(true);