Compartilhar via


Desenvolvendo aplicativos do Windows inclusivos

Este artigo discute como desenvolver aplicativos acessíveis do Windows. Especificamente, ele pressupõe que você entenda como projetar a hierarquia lógica para seu aplicativo. Aprenda a desenvolver aplicativos acessíveis do Windows que incluem navegação por teclado, configurações de cor e contraste e suporte para tecnologias adaptativas.

Se você ainda não fez isso, comece lendo Projetando software inclusivo.

Há três coisas que você deve fazer para garantir que seu aplicativo esteja acessível:

  1. Exponha seus elementos de interface do usuário ao acesso programático.
  2. Verifique se o app dá suporte à navegação por teclado para pessoas que não conseguem usar um mouse ou tela sensível ao toque.
  3. Verifique se o app dá suporte a configurações de cor e contraste acessíveis.

Acesso de programação

O acesso programático é fundamental para criar acessibilidade em aplicativos. Isso é feito definindo o nome acessível (obrigatório) e a descrição (opcional) para conteúdo e elementos interativos da interface do usuário em seu aplicativo. Isso garante que os controles da interface do usuário sejam expostos à tecnologia adaptativa (AT), como leitores de tela (por exemplo, Narrador) ou dispositivos de saída alternativos (como telas em Braille). Sem acesso programático, as APIs para tecnologia assistiva não podem interpretar as informações corretamente, deixando o usuário incapaz de usar os produtos o suficiente ou forçando o AT a usar interfaces ou técnicas de programação não documentadas que nunca se destinam a ser usadas como uma interface de acessibilidade. Quando os controles de interface do usuário são expostos à tecnologia assistencial, o AT é capaz de determinar quais ações e opções estão disponíveis para o usuário.

Para obter mais informações sobre como disponibilizar elementos da interface do usuário do aplicativo para tecnologias adaptativas (AT), consulte Expor informações básicas de acessibilidade.

Navegação pelo teclado

Para usuários cegos ou com problemas de mobilidade, ser capaz de navegar na interface do usuário com um teclado é extremamente importante. No entanto, somente os controles de interface do usuário que exigem interação do usuário para funcionar devem receber o foco do teclado. Os componentes que não exigem uma ação, como imagens estáticas, não precisam do foco do teclado.

É importante lembrar que, ao contrário da navegação com mouse ou toque, a navegação pelo teclado é linear. Ao considerar a navegação pelo teclado, pense em como o usuário interagirá com seu produto e qual será a navegação lógica. Nas culturas ocidentais, as pessoas leem da esquerda para a direita, de cima para baixo. É, portanto, prática comum seguir esse padrão para navegação por teclado.

Ao projetar a navegação pelo teclado, examine sua interface do usuário e pense sobre estas questões:

  • Como os controles são dispostos ou agrupados na interface do usuário?
  • Há alguns grupos significativos de controles?
    • Em caso afirmativo, esses grupos contêm outro nível de grupos?
  • Entre os controles de pares, a navegação deve ser feita por tabulação ou por meio de navegação especial (como teclas de seta) ou ambos?

O objetivo é ajudar o usuário a entender como a interface do usuário é apresentada e identificar os controles que são acionáveis. Se você estiver achando que existem muitas tabulações antes de o usuário concluir o loop de navegação, considere a possibilidade de agrupar os controles relacionados. Alguns controles relacionados, como um controle híbrido, podem precisar ser abordados neste estágio inicial de exploração. Depois de começar a desenvolver seu produto, é difícil retrabalhar a navegação pelo teclado, portanto, planeje com cuidado e planeje com antecedência!

Para saber mais sobre a navegação do teclado entre os elementos da interface do usuário, consulte Acessibilidade do teclado.

Além disso, o eBook Software de Engenharia para Acessibilidade tem um excelente capítulo sobre esse assunto intitulado Projetando a Hierarquia Lógica.

Cor e contraste

Um dos recursos de acessibilidade integrados no Windows é o modo de alto contraste, que aumenta o contraste de cores de texto e imagens na tela do computador. Para algumas pessoas, aumentar o contraste nas cores reduz a fadiga ocular e facilita a leitura. Ao verificar sua interface do usuário em alto contraste, você deseja verificar se os controles foram codificados de forma consistente e com cores do sistema (não com cores codificadas) para garantir que eles possam ver todos os controles na tela que um usuário que não usa alto contraste veria.

XAML

<Button Background="{ThemeResource ButtonBackgroundThemeBrush}">OK</Button>

Para obter mais informações sobre como usar cores e recursos do sistema, consulte Recursos de tema XAML.

Contanto que você não tenha substituído as cores do sistema, um aplicativo UWP dá suporte a temas de alto contraste por padrão. Se um usuário tiver escolhido que deseja que o sistema use um tema de alto contraste nas configurações do sistema ou nas ferramentas de acessibilidade, a estrutura usará automaticamente as configurações de cores e estilo que produzem um layout e renderização de alto contraste para controles e componentes na interface do usuário.

Para obter mais informações, consulte Temas de alto contraste.

Se você decidiu usar seu próprio tema de cores em vez de cores do sistema, considere estas diretrizes:

Taxa de contraste de cores – A Seção 508 atualizada da Lei dos Americanos com Deficiência, bem como outras legislações, exige que os contrastes de cores padrão entre o texto e seu plano de fundo sejam 5:1. Para texto grande (tamanhos de fonte de 18 pontos ou 14 pontos e negrito), o contraste padrão necessário é 3:1.

Combinações de cores – Cerca de 7% dos homens (e menos de 1% das mulheres) têm alguma forma de deficiência de cor. Os usuários com daltonismo têm problemas para distinguir entre determinadas cores, por isso é importante que a cor sozinha nunca seja usada para transmitir status ou significado em um aplicativo. Quanto às imagens decorativas (como ícones ou planos de fundo), as combinações de cores devem ser escolhidas de forma a maximizar a percepção da imagem pelos usuários daltônicos.

Lista de verificação de acessibilidade

A seguir está uma versão abreviada da lista de verificação de acessibilidade:

  1. Defina o nome acessível (obrigatório) e a descrição (opcional) para conteúdo e elementos interativos da interface do usuário em seu aplicativo.
  2. Implemente a acessibilidade do teclado.
  3. Verifique sua interface do usuário para garantir que o contraste do texto esteja adequado, que os elementos renderizem corretamente nos temas em alto contraste e que as cores estejam sendo usadas corretamente.
  4. Execute ferramentas de acessibilidade, resolva problemas relatados e verifique a experiência de leitura da tela. (Consulte o tópico Teste de acessibilidade.)
  5. Verifique se as configurações de manifesto do aplicativo seguem as diretrizes de acessibilidade.
  6. Declare seu aplicativo como acessível na Microsoft Store. (Veja o Acessibilidade no tópico da loja .)

Para obter mais detalhes, consulte o tópico completo da lista de verificação de acessibilidade.