隐藏大苏尔中的默认NSOutlineView展开/折叠箭头

问题描述

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

以下是屏幕截图:

enter image description here

我将NSOutlineView设置为具有Plain样式,因为我还在行周围提供了自己的边距。但是,我在情节提要编辑器中看不到用于隐藏箭头的任何选项,在文档的NSOutlineView下也看不到任何选项。

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

解决方法

自定义NSOutlineView的显示按钮的可靠方法是将NSOutlineView子类化并重写几个关键方法。首先,重写frameOfOutlineCellAtRow:将箭头重新定位在所需位置。然后,覆盖makeViewWithIdentifier:以自定义实际实现箭头的视图。您可以使用标识符NSOutlineViewDisclosureButtonKey对其进行标识。

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

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...