Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Todas as plataformas suportadas pelo .NET MAUI oferecem suporte para modos claro e escuro. É essencial ter isto em conta no design das aplicações para proporcionar a melhor experiência ao utilizador final. O pacote de Marcação C# oferece a capacidade de definir valores de propriedades que serão trocados com base no tema atual do sistema (consulte a documentação Microsoft).
Existem duas formas de definir os valores do tema da app:
1. Num caso específico BindableObject
Ao construir a interface de utilizador de uma aplicação com C#, é possível definir os valores para o modo claro e escuro com o AppThemeBinding método de extensão.
O exemplo seguinte mostra como criar um Label com o seguinte:
- Defina a
Textpropriedade para mostrar "Modo Claro" quando o sistema estiver em modo claro e "Modo Escuro" quando a aplicação estiver em modo escuro. - Defina a
TextColorpropriedade paraColors.Blackquando o sistema está em modo claro eColors.Whitequando a aplicação está em modo escuro.
new Label()
.AppThemeBinding(Label.TextProperty, "Light Mode", "Dark Mode")
.AppThemeColorBinding(Label.TextColorProperty, Colors.Black, Colors.White);
2. Em Style
É normalmente recomendado criar um Style que se possa aplicar a múltiplas instâncias de um controlo e, assim, simplificar o código necessário para construir a interface de utilizador de uma aplicação. Para este fim, existem métodos disponíveis na classe Style<T>AppThemeBinding.
O exemplo seguinte mostra como criar um Style para um Label que tenha o mesmo comportamento do exemplo anterior:
- Defina a
Textpropriedade para mostrar "Modo Claro" quando o sistema estiver em modo claro e "Modo Escuro" quando a aplicação estiver em modo escuro. - Defina a
TextColorpropriedade paraColors.Blackquando o sistema está em modo claro eColors.Whitequando a aplicação está em modo escuro.
var labelStyle = new Style<Label>()
.AddAppThemeBinding(Label.TextProperty, "Light Mode", "Dark Mode")
.AddAppThemeBinding(Label.TextColorProperty, Colors.Black, Colors.White);
new Label
{
Style = labelStyle
};
.NET MAUI Community Toolkit