Поделиться через


Сведения о отображении устройства

Browse sample. Обзор примера

В этой статье описывается, как использовать интерфейс пользовательского интерфейса приложений .NET (.NET MAUI) IDeviceDisplay для чтения сведений о метриках экрана устройства. Этот интерфейс можно использовать для запроса экрана оставаться в состоянии пробуждения во время работы приложения.

Реализация интерфейса по умолчанию IDeviceDisplay доступна через DeviceDisplay.Current свойство. Интерфейс IDeviceDisplay и DeviceDisplay класс содержатся в Microsoft.Maui.Devices пространстве имен.

Основные сведения о отображении

Свойство MainDisplayInfo возвращает сведения о экране и ориентации. В следующем примере кода для чтения сведений о текущем экране используется Loaded событие страницы:

private void ReadDeviceDisplay()
{
    System.Text.StringBuilder sb = new System.Text.StringBuilder();

    sb.AppendLine($"Pixel width: {DeviceDisplay.Current.MainDisplayInfo.Width} / Pixel Height: {DeviceDisplay.Current.MainDisplayInfo.Height}");
    sb.AppendLine($"Density: {DeviceDisplay.Current.MainDisplayInfo.Density}");
    sb.AppendLine($"Orientation: {DeviceDisplay.Current.MainDisplayInfo.Orientation}");
    sb.AppendLine($"Rotation: {DeviceDisplay.Current.MainDisplayInfo.Rotation}");
    sb.AppendLine($"Refresh Rate: {DeviceDisplay.Current.MainDisplayInfo.RefreshRate}");

    DisplayDetailsLabel.Text = sb.ToString();
}

Интерфейс IDeviceDisplay также предоставляет MainDisplayInfoChanged событие, которое возникает при изменении любой метрики экрана, например при изменении ориентации устройства на DisplayOrientation.LandscapeDisplayOrientation.Portrait.

Сохранение экрана

Вы также можете запретить блокировку устройства или отключение экрана, задав KeepScreenOn для свойства значение true. Следующий пример кода переключает блокировку экрана при нажатии элемента управления переключателем:

private void AlwaysOnSwitch_Toggled(object sender, ToggledEventArgs e) =>
    DeviceDisplay.Current.KeepScreenOn = AlwaysOnSwitch.IsToggled;

Различия между платформами

В этом разделе описываются различия платформы с отображением устройства.

Различия платформ отсутствуют.