Как правильно использовать NSCollectionView и Outlets?
-
10-07-2019 - |
Вопрос
Я отчаянно пытаюсь подключить элементы управления NSViews, которые будут находиться в NSCollectionView, используя выходы. Представление коллекции подается с использованием NSArrayController.
Я создал NSView в отдельном файле NIB, и в реализации NSCollectionViewItem я переписал copyWithZone, чтобы загрузить его:
-(id)copyWithZone:(NSZone *)zone
{
id result = [super copyWithZone:zone];
[NSBundle loadNibNamed:@"InputView" owner:result];
return result;
}
Я использовал этот подход в соответствии с этими инструкциями .
К сожалению, это то, что происходит:
NSView выглядит так:
NSCollectionView находится в NSScrollView, а полоса прокрутки настроена на автоматическое включение. Но, как вы можете видеть, полосы прокрутки нет. Р>
Я не совсем понимаю, что мне нужно делать, поэтому NSCollectionView знает размеры своих NSView.
Раньше это работало, когда у меня не было отдельного NIB-файла, но тогда я не мог установить выходные соединения от представления к элементу: - (
Решение
Сколько элементов в контроллере массива? Ваш вывод выглядит правильно для того, что вы описали, при условии, что в контроллере есть по крайней мере 14 вещей (1 просмотр на элемент). Размер просто выключен. Непонятно, какую проблему вы пытаетесь решить.
Возможно, вы искали сетку, и поэтому вам нужно вызвать setMaximumNumberOfColumns:
? Или, возможно, размер ваших представлений не изменяется, как вы ожидаете (проверьте -maxItemSize
и -minItemSize
)? Р>