От https://developer.apple.com/reference/appkit/nscollectionviewsectionheaderview/1644266-sectioncollapsebutton:Электропроводка sectionCollapseButton в NSCollectionViewSectionHeaderView
Для лучшего пользовательского опыта, установите это свойство на кнопку, которая позволяет пользователям контролировать Сворачивание секции таким образом, чтобы вид коллекции может показать и скрыть кнопку соответственно, в зависимости от того, могут ли элементы раздела отображаться в доступном пространстве. В представлении коллекции используется свойство toggleSectionCollapse (_ :) для доступа к этой кнопке .
Не знаете, как установить эту кнопку. Вот мой класс:
import Cocoa
class HeaderView: NSView, NSCollectionViewSectionHeaderView, NSCollectionViewElement {
@IBOutlet weak var collapseButton: NSButton!
...
}
Если я пытаюсь:
var sectionCollapseButton: NSButton?{
return collapseButton
}
Тогда я получаю предупреждение:
вар 'sectionCollapseButton' почти соответствует факультативное требование 'sectionCollapseButton' протокола «NSCollectionViewSectionHeaderView»
Это также невозможно сделать это таким образом:
override func awakeFromNib() {
sectionCollapseButton = collapseButton
super.awakeFromNib()
self.sectionCollapseButton = collapseButton
}
И это также невозможно подключить его с помощью IB, потому что нет такой ссылки на выходе.
Существует ошибка компилятора * «бесхозных» может только применяется к классам и классам связанных типов, а не «NSButton?» * – Shmidt
Даже если я изменю его на слабые, что позволит мне подключить его к IB, это тоже не сработает. – Shmidt