Aus irgendeinem Grund genannt, mein NSCollectionView
(die einen benutzerdefinierten Layout verwendet, die ich geschrieben habe) ruft collectionView(_:didSelectItemsAt:)
Funktion seines Beauftragten, wenn ich auf ein Element klicken, aber nicht das gleiche Delegierten collectionView(_:didDeselectItemsAt:)
ist, wenn ich weg klicken es.Kollektion (_: didDeselectItemsAt :) wird nie
Hier ist meine Grundeinstellung:
class MyCollectionViewContainer: NSViewController {
fileprivate lazy var collectionView: NSCollectionView = {
let collectionView = NSCollectionView()
collectionView.delegate = self
collectionView.dataSource = self
collectionView.collectionViewLayout = self.customLayout
collectionView.isSelectable = true
collectionView.allowsEmptySelection = true
collectionView.allowsMultipleSelection = false
}()
}
extension MyCollectionViewContainer: NSCollectionViewDelegate {
func collectionView(_ collectionView: NSCollectionView, didSelectItemsAt indexPaths: Set<IndexPath>) {
print("Selected", indexPaths)
// Mutate data to reflect that selection
}
func collectionView(_ collectionView: NSCollectionView, didDeselectItemsAt indexPaths: Set<IndexPath>) {
print("Deselected", indexPaths)
}
}
"abgewählt" nie gedruckt wird ...:/
Verwandte: [NSCollectionView deaktivieren Mehrfachauswahl] (https://stackoverflow.com/questions/40472377/nscollectionview-deselect-multiple-selection) –