Основанный на представлении NSTableView против NSCollectionView? - PullRequest
6 голосов
/ 30 марта 2012

Я понял, что метод "летучего веса" на основе ячеек NSTableView, и я думаю, я понимаю различия с NSCollectionView. Различия между (на основе ячеек) NSTableView и NSCollectionView

Однако чуть менее очевидны различия между на основе вида NSTableView и NSCollectionView.

С гибкостью NSCollectionView вотображая его элементы (то есть в макете сетки), которые могли бы эмулировать список tableView (сетка с максимум одним столбцом) и исключая личные предпочтения, почему кто-то выбрал (View-based) NSTableView вместо NSCollectionView?

1 Ответ

8 голосов
/ 03 февраля 2013

NSCollectionView не использует переработку вида.Это означает, что представление будет создаваться для каждого элемента представления коллекции, независимо от того, отображается оно на экране или нет.Это может разрушить вашу производительность с большими наборами данных.Основанный на представлении NSTableView использует переработку представления и является очень эффективным, поскольку он перерабатывает ограниченное количество ячеек вместо создания новых для каждого элемента.Не говоря уже о том, что NSCollectionView в целом является плохо написанным и плохо документированным классом.

...