6

私はセルベースのNSTableView のフライウェイト アプローチを理解しており、NSCollectionView との違いも理解していると思います。(セルベース) NSTableView と NSCollectionView の違い

ただし、ビューベースのNSTableView と NSCollectionViewの違いはあまり明確ではありません。

tableView のリスト (最大 1 列のグリッド) をエミュレートし、個人的な設定を除外できるアイテムを (つまり、グリッド レイアウトで) 表示する NSCollectionView の柔軟性により、なぜ誰かが NSCollectionView よりも (ビューベースの) NSTableView を選択するのでしょうか?

4

1 に答える 1

8

更新:(エルキャピタン以降、ビューのリサイクルが実装されています)

NSCollectionViewビューのリサイクルは使用しません。これは、ビューが画面に表示されているかどうかに関係なく、すべてのコレクションビューアイテムに対してビューが作成されることを意味します。これにより、大規模なデータセットでパフォーマンスが低下する可能性があります。ビューベースNSTableViewはビューのリサイクルを使用し、アイテムごとに新しいセルを作成するのではなく、限られた数のセルをリサイクルするため、非常に効率的です。言うまでもなく、それNSCollectionViewは全体的に不十分に書かれ、不十分に文書化されたクラスです。

于 2013-02-03T09:04:20.717 に答える