1

在 macOS Big Sur 之前,我可以创建NSOutlineView和隐藏用于展开和折叠项目组的默认显示/隐藏箭头。但现在在大苏尔,我找不到任何摆脱默认箭头的方法。我正在使用自己的箭头样式和功能。

这是一个屏幕截图:

在此处输入图像描述

我的NSOutlineView设置有一个Plain样式,因为我还在行周围提供了我自己的边距。但是我在故事板编辑器中看不到任何隐藏箭头的选项,我也看不到NSOutlineView文档中的任何选项来执行此操作。

有谁知道如何隐藏 Big Sur 中的默认展开/折叠箭头?

4

1 回答 1

4

为 NSOutlineView 自定义显示按钮的一种可靠方法是继承 NSOutlineView 并覆盖几个关键方法。首先,覆盖 frameOfOutlineCellAtRow: 以将箭头重新定位到您想要的位置。然后,重写 makeViewWithIdentifier: 来自定义实际实现箭头的视图。您可以使用标识符 NSOutlineViewDisclosureButtonKey 来识别它。

以这种方式实现目标可能比您以前所做的更可靠,并且对于可访问性屏幕阅读器等技术可能更加一致。

于 2020-11-07T15:32:31.527 回答