Mon NSCollectionView
se bloque lors de l'appel makeItem(withIdentifier identifier: String, for indexPath: IndexPath)
. numberOfItemsInSection
renvoie la valeur correcte. Si j'appelle makeItem...
dans viewDidLoad
plutôt que dans itemForRepresentedObject
je vois une erreur indiquant que l'indexPath est hors des limites. Comment se peut-il?NSCollectionView se bloque lors de la création d'éléments
La vue collection des charges comme ceci:
class TagCollectionViewController: NSViewController, NSCollectionViewDataSource {
fileprivate static let itemIdentifier = "TagItem"
@IBOutlet var collectionView: NSCollectionView!
fileprivate var tags = List<Tag>.init()
override func viewDidLoad() {
super.viewDidLoad()
let nib = NSNib(nibNamed: "TagCollectionViewItem", bundle: nil)
collectionView.register(nib, forItemWithIdentifier: TagCollectionViewController.itemIdentifier)
collectionView.dataSource = self
}
(la liste de collection est une classe de Realm)
Pendant viewWillAppear()
la collection balises est peuplée d'un état ReSwift:
override func viewWillAppear() {
for image in mainStore.state.selectedImages {
for tag in image.tags {
tags.append(tag)
}
}
super.viewWillAppear()
}