Ordem de apresentação

Contexto

Uma pessoa que usa o leitor de tela TalkBack pode navegar em um aplicativo de duas maneiras:

  • Exploração por toque: basta arrastar o dedo sobre a tela para navegar pelos elementos.
  • Navegação linear: basta deslizar para a direita e para a esquerda para avançar e para voltar. Faça isso em um item por vez. 

Os apps para Android devem oferecer suporte à exploração por toque e à navegação linear. Geralmente, a ordem de apresentação durante a navegação linear deve corresponder à ordem visual ou deve ser otimizada para manter a ordem lógica para as pessoas que usam leitores de tela.  

Por padrão, o TalkBack usa a hierarquia de exibição do app para determinar a ordem de apresentação dos itens durante a navegação linear.

Implementação

Nos casos em que a hierarquia de exibição de um aplicativo não reflete a estrutura lógica dele, os desenvolvedores podem alterar a apresentação de acessibilidade definindo os atributos android:accessibilityTraversalBefore ou android:accessibilityTraversalAfter. Essas propriedades indicam que um leitor de tela deve acessar o conteúdo de uma visualização antes (ou depois) do conteúdo de outra. As visualizações sem relações de conteúdo que vêm “antes/depois” são percorridas em uma ordem determinada pelo leitor de tela.

A ordem de apresentação de acessibilidade é diferente da ordem do “foco de entrada” usada para navegação com teclado. A ordem de navegação com teclado é especificada pelos atributos android:nextFocusDown, android:nextFocusLeft, android:nextFocusRight e android:nextFocusUp.

Se usar os atributos accessibilityTraversalBefore e accessibilityTraversalAfter, siga as dicas mostradas a seguir para evitar a restrição excessiva da ordem de apresentação:

  • Use esses atributos apenas em locais em que a ordem lógica for diferente da ordem de exibição da hierarquia.
  • Cada elemento que um usuário pode destacar com a exploração por toque também precisa ser destacável durante a navegação linear.
  • A ordem de apresentação deve ser consistente com a navegação linear, independentemente da direção. Por exemplo, um gesto para mover o foco para o elemento “próximo” seguido de um gesto para mover o foco para o elemento “anterior” sempre deve resultar no foco retornando ao elemento original.
  • Os ciclos não devem ser iniciados na definição do parâmetro accessibilityTraversalBefore e accessibilityTraversalAfter, ou os usuários podem não acessar alguns elementos ao utilizar a navegação linear.

Design

Ao projetar um aplicativo, considere como uma pessoa que usa um leitor de tela vai navegar pelas informações apresentadas na interface de forma linear. A ideia é que a ordem de apresentação corresponda à apresentação visual das informações. No entanto, quando não for possível fazer essa correspondência, você pode especificar uma ordem de apresentação que transmita a estrutura lógica ou a intenção da interface.

Saiba mais sobre Como criar uma navegação fácil de seguir.

Testes

Siga as etapas a seguir para avaliar manualmente a ordem de apresentação da acessibilidade de um aplicativo:

  1. Ative o TalkBack.
  2. Abra o app.
  3. Use gestos de navegação linear para mover o foco da acessibilidade para cada elemento na tela.
  4. Verifique se o TalkBack move o foco pelos elementos da tela em uma ordem lógica e representa, por meio da fala, cada elemento de forma compreensível.
  5. Verifique se o TalkBack move o foco para trás e para frente nos elementos da tela de modo consistente, independentemente da direção de navegação.

As ferramentas de teste automatizadas do Android podem detectar alguns problemas da ordem de apresentação. Recomendamos que você use o Scanner de acessibilidade para Android para testar manualmente seu app no dispositivo. No caso de testes automatizados, ative a verificação de acessibilidade no Espresso e no Robolectric.

Pesquisa
Limpar pesquisa
Fechar pesquisa
Menu principal
4277051124026177501
true
Pesquisar na Central de Ajuda
true
true
true
true
true
717068
false
false