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 类公开调用了 KeepScreenOn
的 bool
属性,可将其设置为防止关闭或锁定设备的显示器。
public class KeepScreenOnTest
{
public void ToggleScreenLock()
{
DeviceDisplay.KeepScreenOn = !DeviceDisplay.KeepScreenOn;
}
}