У меня есть пользовательская ячейка таблицы с изображением спереди и несколькими метками посередине и изображением в конце. Когда озвучивание включено и фокусируется на всей строке таблицы, все метки считываются, а затем, когда я прокручиваю, чтобы перейти к следующему элементу управления, фокусируется первое изображение, а затем смахивание элемента управления перемещается на второе изображение. Как сделать, чтобы все элементы в строке читались вместе, когда вся строка сфокусирована?
iOS Читать все элементы в tabeviewcell, когда включено озвучивание
Ответы (2)
Используйте shouldGroupAccessibilityChildren
и убедитесь, что все элементы в ячейке доступны. element.isAccessibilityElement = YES;
person
Bharath
schedule
13.06.2018
Как сделать, чтобы все элементы в строке читались вместе, когда вся строка сфокусирована?
TableviewCell
должен рассматриваться как контейнер, поэтому элементы, которые он содержит, не могут быть проанализированы VoiceOver, если он определен accessible
: вы не можете иметь доступ к родительскому представлению и его дочерним элементам вместе ⟹ см. лист с примерами этого пояснения.
Если вы не хотите, чтобы элементы внутри каждой ячейки считывались, просто определите каждый из них следующим образом:
override func tableView(_ tableView: UITableView,
cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "reuseIdentifier",
for: indexPath)
cell.isAccessibilityElement = true
cell.accessibilityLabel = "APPEND YOUR LABELS HERE"
// Add everything you need to construct your cell here.
return cell
}
По этой причине iOS не будет считывать все элементы в TableviewCell
при включенной функции VoiceOver.
person
XLE_22
schedule
23.08.2019