iOS画外音:聚焦选定的单元格而不是第一行
iOS Voiceover: Focus selected cell and not the first row
我试图让我的应用程序易于访问,在我的界面中我有一个 UILabel 和一个 UITableView,tableView 有一个 selectedRow。 selectedRow 是 table 视图中间的行,例如,如果我有 100 行,则为第 50 行。
我的问题是当我在屏幕上滑动以转到下一个元素时,在这种情况下,当我从标签转到 tableView 时,焦点转到第一个索引而不是我的单元格被选中.
我该如何解决?
假设您只有一个标签和一个 table 视图,问题归结为当您从标签移动到 table 视图时记住单元格的最新位置。
下面的算法可以用来解决这个问题:
- 创建包含所选单元格索引路径的临时索引路径变量 (
tmpIP
)。
- 当标签失去焦点时,table视图选择具有最新
tmpIP
索引路径的单元格。如果在选择标签之前没有选择单元格,则变量值为 nil。
看看 UIAccessibilityFocus
informal protocol 来处理可访问元素的焦点。
我试图让我的应用程序易于访问,在我的界面中我有一个 UILabel 和一个 UITableView,tableView 有一个 selectedRow。 selectedRow 是 table 视图中间的行,例如,如果我有 100 行,则为第 50 行。
我的问题是当我在屏幕上滑动以转到下一个元素时,在这种情况下,当我从标签转到 tableView 时,焦点转到第一个索引而不是我的单元格被选中.
我该如何解决?
假设您只有一个标签和一个 table 视图,问题归结为当您从标签移动到 table 视图时记住单元格的最新位置。
下面的算法可以用来解决这个问题:
- 创建包含所选单元格索引路径的临时索引路径变量 (
tmpIP
)。 - 当标签失去焦点时,table视图选择具有最新
tmpIP
索引路径的单元格。如果在选择标签之前没有选择单元格,则变量值为 nil。
看看 UIAccessibilityFocus
informal protocol 来处理可访问元素的焦点。