C의 테마 지정#
.NET MAUI에서 지원하는 모든 플랫폼은 밝고 어두운 모드를 지원합니다. 최종 사용자에게 최상의 환경을 제공하기 위해서는 이를 애플리케이션 디자인으로 고려해야 합니다. C# 태그 패키지는 시스템 현재 테마에 따라 교환할 속성 값을 정의하는 기능을 제공합니다(Microsoft 설명서 참조).
앱 테마 값을 정의하는 방법에는 두 가지가 있습니다.
1. 특정 BindableObject
C#을 사용하여 애플리케이션의 사용자 인터페이스를 빌드할 때 확장 메서드를 사용하여 밝고 어두운 모드 AppThemeBinding
에 대한 값을 정의할 수 있습니다.
다음 예제에서는 다음을 사용하여 만드는 Label
방법을 보여줍니다.
Text
시스템이 라이트 모드일 때는 "라이트 모드", 애플리케이션이 어둡게 모드인 경우 "어둡게 모드"를 표시하도록 속성을 설정합니다.TextColor
시스템이 라이트 모드이고 애플리케이션이 어둡게 모드Colors.White
에 있는 경우로 속성을Colors.Black
설정합니다.
new Label()
.AppThemeBinding(Label.TextProperty, "Light Mode", "Dark Mode")
.AppThemeColorBinding(Label.TextColorProperty, Colors.Black, Colors.White);
2. Style
일반적으로 컨트롤의 여러 인스턴스에 적용할 수 있는 코드를 만들고 Style
애플리케이션의 사용자 인터페이스를 빌드하는 데 필요한 코드를 간소화하는 것이 좋습니다. 이를 위해 클래스에서 사용할 수 있는 AppThemeBinding
메서드가 Style<T>
있습니다.
다음 예제에서는 이전 예제와 동일한 동작으로 for를 Label
만드는 Style
방법을 보여줍니다.
Text
시스템이 라이트 모드일 때는 "라이트 모드", 애플리케이션이 어둡게 모드인 경우 "어둡게 모드"를 표시하도록 속성을 설정합니다.TextColor
시스템이 라이트 모드이고 애플리케이션이 어둡게 모드Colors.White
에 있는 경우로 속성을Colors.Black
설정합니다.
var labelStyle = new Style<Label>()
.AddAppThemeBinding(Label.TextProperty, "Light Mode", "Dark Mode")
.AddAppThemeBinding(Label.TextColorProperty, Colors.Black, Colors.White);
new Label
{
Style = labelStyle
};
GitHub에서 Microsoft와 공동 작업
이 콘텐츠의 원본은 GitHub에서 찾을 수 있으며, 여기서 문제와 끌어오기 요청을 만들고 검토할 수도 있습니다. 자세한 내용은 참여자 가이드를 참조하세요.
.NET MAUI Community Toolkit
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기