如何禁用NSSplitView的分隔符的可访问性支持?

时间:2015-01-14 20:24:32

标签: objective-c macos cocoa swift nssplitview

我的应用中有一个NSSplitView。它的分隔位置是固定的,用户无法拖动分隔线。现在我正在添加对可访问性的支持。使用VoiceOver时,用户可以选择&拖动分隔线。这破坏了我的UI。 我怎么能告诉VoiceOver它应该忽略分隔符?

我正在使用自OS X 10.10以来可用的新辅助功能协议。

splitView.isAccessibilityElementsplitView.isAccessibilityEnabled设置为no不起作用。

感谢您的帮助!

1 个答案:

答案 0 :(得分:4)

好的,我在WWDC的AppKit团队问过一个好人。 他告诉我目前无法做到这一点 - 因为我无法访问divider中的splitView

<强>解释: 禁用NSView上的辅助功能支持会使特定视图无法访问,但不会显示其子视图 - 这通常是所需的行为

由于分隔符是NSSplitView的子视图,因此不起作用。

<强>解决方案: 我最后没有使用NSSplitView,因为我不需要任何类特定功能。分隔符在我的应用程序中得到修复。

相反,我使用NSStackView来封装我的子视图 - 它完美无缺。 (隐藏和显示子视图)