Sprache

MediaProjection.Callback.OnCapturedContentResize(Int32, Int32) Methode

Definition

Wird unmittelbar nach Beginn der Erfassung aufgerufen oder wenn sich die Größe des erfassten Bereichs ändert, wobei die genaue Größenanpassung für die gestreamte Erfassung bereitgestellt wird.

[Android.Runtime.Register("onCapturedContentResize", "(II)V", "GetOnCapturedContentResize_IIHandler", ApiSince=34)]
public virtual void OnCapturedContentResize(int width, int height);
[<Android.Runtime.Register("onCapturedContentResize", "(II)V", "GetOnCapturedContentResize_IIHandler", ApiSince=34)>]
abstract member OnCapturedContentResize : int * int -> unit
override this.OnCapturedContentResize : int * int -> unit

Parameter

width
Int32

Die Breite des erfassten Bereichs in Pixel.

height
Int32

Die Höhe des erfassten Bereichs in Pixeln.

Attribute

Hinweise

Wird unmittelbar nach Beginn der Erfassung aufgerufen oder wenn sich die Größe des erfassten Bereichs ändert, wobei die genaue Größenanpassung für die gestreamte Erfassung bereitgestellt wird.

Die angegebene Breite und Höhe in Pixel entspricht der gleichen Breite und Höhe, die aus android.view.WindowMetrics#getBounds() dem erfassten Bereich zurückgegeben würde.

Wenn der aufgezeichnete Inhalt ein anderes Seitenverhältnis von dem oder der VirtualDisplay Ausgabe Surfaceaufweist, weist der erfasste Datenstrom letterboxing (schwarze Balken) um den aufgezeichneten Inhalt herum auf. Die Anwendung kann das Letterboxing um den aufgezeichneten Inhalt vermeiden, indem die Größe der Beiden und der VirtualDisplay Ausgabe Surfaceaktualisiert wird:

&#x40;Override
            public String onCapturedContentResize(int width, int height) {
                // VirtualDisplay instance from MediaProjection#createVirtualDisplay
                virtualDisplay.resize(width, height, dpi);

                // Create a new Surface with the updated size (depending on the application's use
                // case, this may be through different APIs - see Surface documentation for
                // options).
                int texName; // the OpenGL texture object name
                SurfaceTexture surfaceTexture = new SurfaceTexture(texName);
                surfaceTexture.setDefaultBufferSize(width, height);
                Surface surface = new Surface(surfaceTexture);

                // Ensure the VirtualDisplay has the updated Surface to send the capture to.
                virtualDisplay.setSurface(surface);
            }

Java Dokumentation für android.media.projection.MediaProjection.Callback.onCapturedContentResize(int, int).

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die von der Android Open Source Project erstellt und gemeinsam verwendet und gemäß den in der 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Gilt für: