Использование NSCollectionView без привязок - PullRequest
8 голосов
/ 12 марта 2011

Есть ли способ использовать NSCollectionView без привязок?

1 Ответ

15 голосов
/ 13 марта 2011

Да, и вам не нужно создавать его подкласс.

Вы можете использовать свойство content, чтобы задать NSCollectionView и массив объектов. Для каждого из этих объектов представление коллекции создаст новый NSCollectionViewItem на copy с его itemPrototype и установкой своего свойства representedObject для соответствующего элемента в массиве content.

Итак, когда я это сделал, я создал подкласс NSCollectionViewItem, а затем переопределил его метод setRepresentedObject: для получения нового объекта, перенаправил его на super и затем соответствующим образом настроил collectionViewItem. Никаких подклассов NSCollectionView не требуется. (Но не забудьте реализовать -copyWithZone:!) Я просто alloc/init отредактировал один из этих пользовательских collectionViewItems и установил его как collectionView itemPrototype. NSCollectionView сделал все остальное.

...