Xamarin.Forms 이중 화면
Microsoft Surface Duo와 같은 이중 화면 디바이스는 애플리케이션에 대한 새로운 사용자 환경 가능성을 용이하게 합니다. Xamarin.Forms에는 TwoPaneView
및 DualScreenInfo
클래스가 포함되어 있으므로, 이중 화면 디바이스용 앱을 개발할 수 있습니다.
시작하기
Xamarin.Forms 앱에 이중 화면 기능을 추가하려면 다음 단계를 따르세요.
솔루션에 대해 NuGet 패키지 관리자 대화 상자를 엽니다.
찾아보기 탭에서
Xamarin.Forms.DualScreen
를 검색합니다.Xamarin.Forms.DualScreen
패키지를 솔루션에 설치합니다.OnCreate
이벤트에서 Android 프로젝트의MainActivity
클래스에 다음 초기화 메서드 호출을 추가합니다.Xamarin.Forms.DualScreen.DualScreenService.Init(this);
이 메서드는 앱이 두 화면에 걸쳐 배치되는 것과 같이 앱 상태의 변경을 감지하는 데 필요합니다.
Android 프로젝트의
MainActivity
클래스에서Activity
특성을 업데이트하여 다음ConfigurationChanges
옵션이 ‘모두’ 포함되도록 합니다.ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation | ConfigChanges.ScreenLayout | ConfigChanges.SmallestScreenSize | ConfigChanges.UiMode
해당 값은 구성 변경 및 범위 상태를 보다 신뢰도 높게 보고할 수 있게 하는 데 필요합니다. 기본적으로 두 개만 Xamarin.Forms 프로젝트에 추가되므로, 신뢰할 수 있는 이중 화면 지원을 위해 나머지를 직접 추가해야 합니다.
문제 해결
DualScreenInfo
클래스 또는 TwoPaneView
레이아웃이 예상대로 작동하지 않는 경우 이 페이지의 설정 지침을 다시 확인하세요. Init
메서드나 ConfigurationChanges
특성 값을 생략하거나 잘못 구성하는 것이 오류의 일반적인 원인입니다.
추가 지침 및 참조 구현에 대한 자세한 내용은 Xamarin.Forms 이중 화면 샘플을 검토하세요.
다음 단계
NuGet을 추가한 후에는 다음 지침에 따라 앱에 이중 화면 기능을 추가합니다.
- 이중 화면 디자인 패턴 - 이중 화면 디바이스에서 다중 화면을 최대한 활용하는 방법을 고려할 때는 패턴 지침을 참조하여 애플리케이션 인터페이스에 적합한 패턴을 찾으세요.
- TwoPaneView 레이아웃 - Xamarin.Forms
TwoPaneView
동일한 이름의 UWP 컨트롤에서 영감을 받은 클래스는 이중 화면 디바이스에 최적화된 플랫폼 간 레이아웃입니다. - DualScreenInfo 도우미 클래스 -
DualScreenInfo
클래스를 사용하면 보기가 표시된 창과 그 크기, 디바이스의 방향, 힌지 각도 등을 확인할 수 있습니다. - 이중 화면 트리거 -
Xamarin.Forms.DualScreen
네임스페이스에는 연결된 레이아웃 또는 창의 보기 모드가 변경될 때VisualState
변경을 트리거하는 두 개의 상태 트리거가 포함되어 있습니다.
자세한 내용은 이중 화면 개발자 문서를 참조하세요.