Langue

MediaProjection.Callback.OnCapturedContentResize(Int32, Int32) Méthode

Définition

Appelé immédiatement après le début de la capture ou lorsque la taille de la région capturée change, en fournissant le dimensionnement précis de la capture diffusée en continu.

[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

Paramètres

width
Int32

Largeur de la région capturée, en pixels.

height
Int32

Hauteur de la région capturée, en pixels.

Attributs

Remarques

Appelé immédiatement après le début de la capture ou lorsque la taille de la région capturée change, en fournissant le dimensionnement précis de la capture diffusée en continu.

La largeur et la hauteur données, exprimées en pixels, correspondent à la même largeur et à la même hauteur qui seraient retournées à partir de android.view.WindowMetrics#getBounds() la région capturée.

Si le contenu enregistré a un rapport d’aspect différent de la ou de la VirtualDisplay sortie Surface, le flux capturé a une boîte à lettres (barres noires) autour du contenu enregistré. L’application peut éviter la boîte de lettres autour du contenu enregistré en mettant à jour la taille de la sortie et de la VirtualDisplay sortie Surface:

&#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 documentation pour android.media.projection.MediaProjection.Callback.onCapturedContentResize(int, int).

Les parties de cette page sont des modifications basées sur le travail créé et partagé par Android Open Source et utilisées en fonction des termes décrits dans la Creative Commons 2.5 Attribution License.

S’applique à