VoiceOver и метки доступности
Описывайте элементы управления для вспомогательных технологий.
«VoiceOver и метки доступности» — бесплатный урок SwiftUI Academy на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения SwiftUI Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс SwiftUI Academy содержит 4 уроков всего.
Что такое VoiceOver
VoiceOver — это экранный диктор Apple. Он озвучивает интерфейс, чтобы люди, которые не видят экран, могли пользоваться приложением. 🔊
SwiftUI помогает Вам
Хорошая новость: SwiftUI автоматически создаёт доступность для стандартных представлений. Text уже озвучивает своё содержимое, так что Вы начинаете с готовой основы.
Когда подписи пропадают
У кнопки, содержащей только значок, нет читаемого текста, поэтому VoiceOver может не сказать ничего полезного. В таком случае добавьте явную подпись доступности.
Button(action: save) {
Image(systemName: "square.and.arrow.down")
}Добавление подписи
Добавьте accessibilityLabel, чтобы простыми словами описать действие элемента управления, а не его внешний вид.
Button(action: save) {
Image(systemName: "square.and.arrow.down")
}
.accessibilityLabel("Save")Подпись, а не внешний вид
Формулируйте подпись через цель пользователя. Скажите «Сохранить», а не «значок стрелки вниз». Подпись должна передавать смысл, а не украшать интерфейс.
Добавление подсказок
accessibilityHint сообщает пользователю, что произойдёт после действия. Она озвучивается после подписи с короткой паузой.
.accessibilityLabel("Save")
.accessibilityHint("Saves your note to the list")Озвучивание значения
Для элементов управления, содержащих данные, accessibilityValue озвучивает текущее состояние, например значение ползунка «70 процентов».
Slider(value: $level)
.accessibilityValue("\(Int(level)) percent")Объединение элементов
Используйте accessibilityElement(children:), чтобы объединить части карточки в один переход, и VoiceOver прочитал её как единый элемент.
VStack { Text(name); Text(role) }
.accessibilityElement(children: .combine)Обозначение ролей с помощью признаков
Добавьте accessibilityAddTraits, чтобы VoiceOver объявлял роль представления, например называл доступную для нажатия карточку кнопкой.
.accessibilityAddTraits(.isButton)Скрытие декора
Чисто декоративные изображения создают лишний шум. Используйте accessibilityHidden(true), чтобы пропустить их и сосредоточить VoiceOver на важном.
Image("sparkle")
.accessibilityHidden(true)Проверьте самостоятельно
Включите VoiceOver в настройках доступности и проведите по экрану приложения. Прослушивание — самый быстрый способ обнаружить недочёты.
Быстрая проверка
У Вас есть кнопка только со значком. Какой модификатор даст VoiceOver читаемое название?
Итоги
Вы научились делать элементы управления озвучиваемыми: добавлять accessibilityLabel для значков, подсказки для описания результатов, а также объединять или скрывать представления, чтобы VoiceOver чётко проходил по интерфейсу. ✨
Изучай Swift с ИИ-репетитором — бесплатно
Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.
- Курсы
- 30
- Уроки
- 120
Часто задаваемые вопросы
Урок «VoiceOver и метки доступности» бесплатный?
Да — полный текст урока «VoiceOver и метки доступности» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс SwiftUI Academy, подпишись на CoddyKit PRO. Курс SwiftUI Academy содержит 4 уроков всего.
Чему я научусь в уроке «VoiceOver и метки доступности»?
Описывайте элементы управления для вспомогательных технологий. Ты практикуешь SwiftUI Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать SwiftUI Academy?
Предыдущий опыт не требуется. SwiftUI Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.
Сколько времени занимает урок «VoiceOver и метки доступности»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке SwiftUI Academy?
Да. Каждый урок SwiftUI Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- VoiceOver и метки доступности
- Динамический тип и масштабируемые шрифты
- Локализация строк и каталогов строк
- Адаптация к светлой и тёмной темам