首页 文章

通过外部点击VoiceOver模式关闭iOS表单模式

提问于
浏览
1

在iPad上,您可以使用 controller.modalPresentationStyle = UIModalPresentationFormSheet 在屏幕上显示居中的模态 . 一种常见的技术是允许用户通过单击"outside"或"behind"来解除模态 . 许多其他答案(Iphone SDK dismissing Modal ViewControllers on ipad by clicking outside of itDismiss modal view form sheet controller on outside tap)都包含了这一点,通常是通过向视图的UIWindow添加点击手势 .

我的问题是,如何在VoiceOver模式下让用户可以访问它?本机操作表允许表单外的点击关闭,甚至提示用户,说“双击以关闭弹出窗口” . 如何以相同的方式显示UIWindow轻击手势?

1 回答

  • 1

    FormSheet演示文稿基本上没有办法做到这一点 . 您可以使用Popover演示文稿,但在某些情况下它的行为会有所不同 .

    我的解决方案是检查 UIAccessibilityIsVoiceOverRunning() 并在FormSheet的顶部添加一个额外的关闭按钮元素,可以通过配音单击 . 我还为global escape gesture实现了 accessibilityPerformEscape .

相关问题