Xamarin.Essentials: Información de pantalla del dispositivo

La clase DeviceDisplay proporciona información sobre las métricas de la pantalla del dispositivo que determinan cómo se ejecuta la aplicación. También puede solicitar que la pantalla no se apague mientras la aplicación se esté ejecutando.

Primeros pasos

Para empezar a usar esta API, lea la guía de introducción para Xamarin.Essentials con el fin de asegurarse de que la biblioteca está correctamente instalada y configurada en los proyectos.

Uso de DeviceDisplay

Agregue una referencia a Xamarin.Essentials en la clase:

using Xamarin.Essentials;

Información de la pantalla principal

Además de información básica del dispositivo, la clase DeviceDisplay contiene información sobre la pantalla y la orientación del dispositivo.

// Get Metrics
var mainDisplayInfo = DeviceDisplay.MainDisplayInfo;

// Orientation (Landscape, Portrait, Square, Unknown)
var orientation = mainDisplayInfo.Orientation;

// Rotation (0, 90, 180, 270)
var rotation = mainDisplayInfo.Rotation;

// Width (in pixels)
var width = mainDisplayInfo.Width;

// Height (in pixels)
var height = mainDisplayInfo.Height;

// Screen density
var density = mainDisplayInfo.Density;

La clase DeviceDisplay también expone un evento al que se puede suscribir para que se desencadene siempre que cambie cualquier métrica de pantalla:

public class DisplayInfoTest
{
    public DisplayInfoTest()
    {
        // Subscribe to changes of screen metrics
        DeviceDisplay.MainDisplayInfoChanged += OnMainDisplayInfoChanged;
    }

    void OnMainDisplayInfoChanged(object sender, DisplayInfoChangedEventArgs  e)
    {
        // Process changes
        var displayInfo = e.DisplayInfo;
    }
}

Procedimiento para mantener la pantalla activa

La clase DeviceDisplay expone una propiedad bool con el nombre KeepScreenOn. Esta propiedad puede establecerse para que intente impedir que la pantalla del dispositivo se apague o bloquee.

public class KeepScreenOnTest
{
    public void ToggleScreenLock()
    {
        DeviceDisplay.KeepScreenOn = !DeviceDisplay.KeepScreenOn;
    }
}

Diferencias entre plataformas

No hay diferencias.

API

Encuentre más vídeos de Xamarin en Channel 9 y YouTube.