我有一个父UIViewController
,我添加了四个子视图控制器。我正在尝试管理这些控制器的可访问性。我有一个status
枚举,用于跟踪哪些孩子在屏幕上可见,所以当更改时,我会根据需要更新孩子的accessibilityElementsHidden
,并发送{{1通知。
我的问题涉及在父视图控制器和每个子视图控制器内部实现LayoutChanged
协议。父母需要知道应该呈现这些元素的顺序等等,并且每个孩子都有自己的元素,这些元素也需要特定的排序。
看来,在孩子们的内部,UIAccessibilityContainer
方法(UIAccessibilityContainer
等人)从未被调用过,所以看起来它忽略了它们,这使得我的元素无序而且凌乱。 / p>
它应该如何?我可能在这里做错了吗?
答案 0 :(得分:1)
未调用UIAccessibilityContainer方法的原因是因为它们被定义为视图控制器的一部分。必须将它们定义为要调用的自定义视图的一部分。
我正在使用我自己的分层视图控制器深入研究UIAccessibility,所以我对如何修复你的订购没有答案。如果我能搞清楚的话,我会更新这篇文章。
答案 1 :(得分:0)
是的,这是正确的,UIAccessibilityContainer正在做的是告诉VoiceOver该元素是从可访问性角度来看最内层的元素。
你能否从UI的角度给出更多关于你想要做什么的背景,可能有更好的方法来实现这个目标