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