Вы можете использовать свойство метки доступности, чтобы VoiceOver мог читать все, что вы хотите:
let buttons = [buttonAdd, buttonDelete]
for button in buttons {
button.accessibilityLabel = "\(button), Item \(x) of \(buttons.count)"
}
Вы также можете добавить его какподсказка (но имейте в виду, что некоторые пользователи VoiceOver отключают подсказки):
for button in buttons {
button.accessibilityLabel = button
button.accessibilityHint = "Item \(x) of \(buttons.count)"
}
В этих примерах предполагается, что видимый текст понятен пользователю VoiceOver, например «Кнопка добавления» или «Кнопка удаления».Если текст не понятен или вы использовали изображение вместо текста, используйте accessibilityLabel для назначения понятного текста.Однако в этом примере вы не сможете выполнить итерацию, вам нужно будет назначить ярлык каждой кнопке отдельно.Затем вы можете либо добавить номер вкладки к метке, либо выполнить итерацию, чтобы назначить их подсказке.
buttonAdd.accessibilityLabel = "Add Button"
buttonDelete.accessibilityLabel = "Delete Button"
По сути, есть несколько способов выполнить то, что вы описали, и это лишь несколькопримеры.
Это руководство очень полезно: http://a11y -guidelines.orange.com / mobile_EN / dev-ios.html