gridCell static method
Widget
gridCell({
- required Widget child,
- required String label,
- required bool selected,
- bool enabled = true,
- VoidCallback? onTap,
Célula selecionável de uma grade (dia de um calendário, valor de uma roda).
Uma grade de células desenhadas é o pior caso do Gate 8: o dia "15" chega ao leitor de tela como o texto "15", sem dizer que é acionável, de que mês é, se está escolhido ou se está fora do intervalo permitido. Quem não enxerga a grade não tem nenhuma dessas informações.
label deve ser o valor por EXTENSO ("15 de julho de 2026"), não o
número: o número sozinho depende de o usuário lembrar o cabeçalho.
Implementation
static Widget gridCell({
required Widget child,
required String label,
required bool selected,
bool enabled = true,
VoidCallback? onTap,
}) {
return MergeSemantics(
child: Semantics(
container: true,
button: true,
selected: selected,
enabled: enabled,
label: label,
onTap: enabled ? onTap : null,
// O número desenhado já está no [label]; deixá-lo mesclar faria o
// leitor dizer "15 de julho de 2026 15".
child: ExcludeSemantics(child: child),
),
);
}