iOS辅助功能 - 立即更改AccessibilityElementsHidden?

时间:2016-05-11 17:58:52

标签: ios xamarin uikit accessibility voiceover

我正在开发一个视图,其中某些元素将被删除并重新添加为可访问的项目,具体取决于视图的状态。通过设置AccessibilityElementsHidden来切换状态,我已经能够成功实现我想要的功能。

但是,我发现在更新辅助功能布局之前,此字段之间存在短暂暂停(约1-2秒),这可以允许用户突出显示已停用的辅助功能元素(如果他们正在移动合理的节奏。如果他们专注于某个项目,因为它被禁用,这使得很难在VoiceOver界面中重新定位自己。

我找到了立即更新界面显示的方法(通过主线程上的SetNeedsLayout()LayoutIfNeeded()),但不幸的是,这不会触发辅助功能布局更新。

我也尝试过使用UIAccessibilityPostNotification.LayoutChanged但是就像更改AccessibilityElementsHidden属性一样,这也需要一点时间传播到视图。

任何人都可以提供一些见解,了解我需要做些什么才能确保用户在应用Accessible Layout之前无法将自己置于糟糕的状态?

0 个答案:

没有答案