gpt4 book ai didi

ios - Swift:Voice Over 从 View 过渡到警报 View 或另一个 View

转载 作者:行者123 更新时间:2023-11-28 23:30:31 26 4
gpt4 key购买 nike

我目前正在开发一款应用程序,我正在使用 UIAccessibility 使其直观易用,供所有人使用。

我认为我面临的是一个简单的挑战,但我就是想不通,我需要任何指导和/或帮助。

我有一个 tableView,当根据其内容点击一个单元格时,它会显示一个警报 View 或一个 viewController。当启用画外音并且点击一个单元格时,画外音会卡在前一个 View 上,而不是在呈现的 viewController 或 alertView 上。我该如何做到这一点,当点击一个单元格时,画外音会聚焦于当前 View ,而不是前一个 View 。

我已尝试将前一个 View 的 accessibilityViewIsModal 设置为 false,将当前 View 的 accessibilityViewIsModal 设置为 true。

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
tableView. accessibilityViewIsModal = false
}

实际结果:画外音专注于上一个 View 预期结果:旁白应专注于呈现的警报 View 。

最佳答案

大多数时候,当呈现警报或模态视图 Controller 时,它应该可以正常工作。您能否分享更多有关如何展示这些内容的详细信息?如果您正在使用自定义模式演示或您有自定义警报 View ,您有时可能需要通知 UIAccessibility 屏幕已更改。您可以像这样发布通知:

UIAccessibility.post(notification: .screenChanged, argument: customModalView)

其中,customModalView 是您想​​要获得 VoiceOver 焦点的 View 。有时,您可能还会发现您所描述的问题,其中焦点仍然可以跳转到所呈现的 View 下方的 View 中的元素。为此,您可以使用您提到的属性accessibilityViewIsModal。但此属性的值默认为 false,您必须将“modalView”设置为模态,以便在呈现时实现可访问性目的,这将允许 VoiceOver 知道它需要跳过任何同级 View 。

customModalView.accessibilityViewIsModal = true

希望对您有所帮助!

关于ios - Swift:Voice Over 从 View 过渡到警报 View 或另一个 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56727060/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com