При реализации большого дерева файловой системы в NSOutlineview отсутствует уведомление о событии, когда пользователь щелкает значок треугольника со стрелкой вниз с левой стороны узла. Это очень важно при ленивой загрузке большого количества файловых узлов в узел каталога и представлении их в NSOutlineview. В противном случае разработчику придется загружать в него весь каталог, таким образом, загрузка заставит конечного пользователя ждать, это неприемлемо. Короче говоря, текущая версия NSOutlineview не может реализовать отложенную загрузку, вызванную этой проблемой. Кто-нибудь сталкивается с этой проблемой или имеет альтернативное решение для реализации древовидного представления, похожего на Finder, с помощью Cocoa NSOutlineview, любая помощь будет очень признательна.
Кроме того:
NSOutlineview не выдает событие layoutViewItemWillExpand при щелчке по значку, и по-прежнему не хватает информации, чтобы узнать, какой узел будет расширяться, даже если это сгенерированное событие, [NSOutlineview selectedRow] не может работать, потому что узел, который будет расширен, еще не выбран.
outlineViewItemWillExpand(_:)
. Пользовательская информация уведомления должна содержать элемент. - person Willeke   schedule 27.02.2020outlineViewItemWillExpand(_:)
. Если вам нужна помощь в отладкеoutlineViewItemWillExpand(_:)
, опубликуйте, пожалуйста, минимально воспроизводимый пример. - person Willeke   schedule 28.02.2020outlineViewItemWillExpand(_:)
не всегда вызывается, когда элемент расширяется? Или он получает элемент из уведомления? - person Willeke   schedule 28.02.2020