Xamarin.Essentials: Сведения о дисплее устройстваXamarin.Essentials: Device Display Information

Класс DeviceDisplay предоставляет сведения о метриках экрана устройства, на котором запущено приложение. Он также позволяет запросить, чтобы при работе приложения устройство не переводилось в спящий режим.The DeviceDisplay class provides information about the device's screen metrics the application is running on and can request to keep the screen from falling asleep when the application is running.

Начало работыGet started

Чтобы начать использовать этот API, ознакомьтесь с руководством по началу работы с Xamarin.Essentials, чтобы правильно настроить и установить библиотеку в проектах.To start using this API, read the getting started guide for Xamarin.Essentials to ensure the library is properly installed and set up in your projects.

Использование DeviceDisplayUsing DeviceDisplay

Добавьте в свой класс ссылку на Xamarin.Essentials:Add a reference to Xamarin.Essentials in your class:

using Xamarin.Essentials;

Основные сведения об экранеMain Display Info

В дополнение к базовой информации об устройстве класс DeviceDisplay содержит информацию об экране устройства и его ориентации.In addition to basic device information the DeviceDisplay class contains information about the device's screen and orientation.

// 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;

Класс DeviceDisplay также предоставляет событие, которое запускается при изменении любой метрики экрана (на это событие можно подписаться):The DeviceDisplay class also exposes an event that can be subscribed to that is triggered whenever any screen metric changes:

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;
    }
}

Класс DeviceDisplay предоставляет свойство bool с именем KeepScreenOn, задание которого предотвращает отключение или блокировку экрана устройства.The DeviceDisplay class exposes a bool property called KeepScreenOn that can be set to attempt to keep the device's display from turning off or locking.

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

Различия платформPlatform Differences

Никаких различий.No differences.

APIAPI