iOS 画外音从覆盖的 UIWindow 读取

iOS Voiceover reads from covered UIWindow

我有以下设置:

问题:

启用画外音后,我触摸 window 1 中没有可交互元素的区域,但 window 0 中确实有这样的元素时,它将select 并读取 window 0 中的元素,即使 window 0 根本不可见。

有什么我遗漏的吗?

原来有两种方法可以解决这个问题:

  1. 在 window 0 上将 accessibilityElementsHidden 设置为 true。不理想,因为它必须在 window 1 消失时恢复。
  2. 在 window 1 上将 accessibilityViewIsModal 设置为 true。所有 windows 都是兄弟姐妹,因此出于可访问性目的,这将忽略 window 0。我认为这不会影响状态栏和键盘等特殊 windows。这可能是最好的解决方案。