VoiceOver e Rótulos de Acessibilidade
Descreva controles para tecnologias assistivas.
VoiceOver e Rótulos de Acessibilidade é uma aula grátis de SwiftUI Academy no CoddyKit. Esta é a aula 1 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de SwiftUI Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de SwiftUI Academy inclui 4 aulas no total.
Partes desta aula ainda não foram traduzidas e aparecem em inglês.
What Is VoiceOver?
VoiceOver is Apple's screen reader. It speaks your interface aloud so people who can't see the screen can still use your app. 🔊
SwiftUI Helps You
The good news: SwiftUI auto-generates accessibility for standard views. A Text already reads its content, so you start ahead.
When Labels Go Missing
An icon-only button has no readable text, so VoiceOver may say nothing useful. That's when you add an explicit accessibility label.
Button(action: save) {
Image(systemName: "square.and.arrow.down")
}Adding a Label
Attach accessibilityLabel to describe what a control does in plain words, not how it looks.
Button(action: save) {
Image(systemName: "square.and.arrow.down")
}
.accessibilityLabel("Save")Label, Not Appearance
Write the label as the user's goal. Say Save, not "down arrow icon". The label is meaning, never decoration.
Adding Hints
An accessibilityHint tells the user what happens after they act. It is read after the label, with a short pause.
.accessibilityLabel("Save")
.accessibilityHint("Saves your note to the list")Reading the Value
For controls that hold data, accessibilityValue announces the current state, like a slider reading "70 percent".
Slider(value: $level)
.accessibilityValue("\(Int(level)) percent")Grouping Elements
Use accessibilityElement(children:) to merge a card's pieces into one swipe, so VoiceOver reads it as a single unit.
VStack { Text(name); Text(role) }
.accessibilityElement(children: .combine)Marking Roles with Traits
Add accessibilityAddTraits so VoiceOver announces a view's role, like calling a tappable card a button.
.accessibilityAddTraits(.isButton)Hiding Decoration
Purely decorative images add noise. Use accessibilityHidden(true) to skip them so VoiceOver focuses on what matters.
Image("sparkle")
.accessibilityHidden(true)Test It Yourself
Turn on VoiceOver in the Accessibility settings and swipe through your app. Hearing it is the fastest way to spot gaps.
Quick Check
You have an icon-only button. Which modifier gives VoiceOver a readable name?
Recap
You learned to make controls speak: add an accessibilityLabel for icons, hints for outcomes, and group or hide views so VoiceOver flows clearly. ✨
Perguntas Frequentes
A aula “VoiceOver e Rótulos de Acessibilidade” é grátis?
Sim — o texto completo de “VoiceOver e Rótulos de Acessibilidade” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de SwiftUI Academy, atualize para CoddyKit PRO. O curso de SwiftUI Academy inclui 4 aulas no total.
O que vou aprender em “VoiceOver e Rótulos de Acessibilidade”?
Descreva controles para tecnologias assistivas. Você pratica SwiftUI Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar SwiftUI Academy?
Nenhuma experiência prévia é necessária. SwiftUI Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 4.
Quanto tempo leva a aula “VoiceOver e Rótulos de Acessibilidade”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de SwiftUI Academy?
Sim. Cada aula de SwiftUI Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- VoiceOver e Rótulos de Acessibilidade
- Tipo Dinâmico e Fontes Dimensionadas
- Localizando Strings e Catálogos de Strings
- Adaptando-se aos Modos Claro e Escuro