Xamarin.Essentials: сведения о отображении устройства
Класс DeviceDisplay предоставляет сведения о метриках экрана устройства, на котором запущено приложение. Он также позволяет запросить, чтобы при работе приложения устройство не переводилось в спящий режим.
Начало работы
Чтобы начать использовать этот API, ознакомьтесь с руководством по началу работы с Xamarin.Essentials, чтобы правильно настроить и установить библиотеку в проектах.
Использование DeviceDisplay
Добавьте ссылку на Xamarin.Essentials в своем классе:
using Xamarin.Essentials;
Основные сведения об экране
В дополнение к базовой информации об устройстве класс DeviceDisplay содержит информацию об экране устройства и его ориентации.
// 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 также предоставляет событие, которое запускается при изменении любой метрики экрана (на это событие можно подписаться):
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
, задание которого предотвращает отключение или блокировку экрана устройства.
public class KeepScreenOnTest
{
public void ToggleScreenLock()
{
DeviceDisplay.KeepScreenOn = !DeviceDisplay.KeepScreenOn;
}
}