【发布时间】:2016-10-10 21:39:08
【问题描述】:
我查看了 NSCollectionView API,但我没有找到任何与我看过的某些教程相匹配的东西。 Xcode 强迫我这样写我的方法,这样就没有错误:
@objc(collectionView:didSelectItemsAtIndexPaths:) func collectionView(_ collectionView: NSCollectionView, didSelectItemsAt indexPaths: Set<IndexPath>) {
print("Selected")
}
每当我单击 NSCollectionView 中的某个项目时,什么都不会发生,并且我的打印语句永远不会显示在控制台中。从 NSCollectionView 中选择项目的正确方法是什么?
【问题讨论】:
-
你设置了collectionView的delegate了吗?
-
是的,我在扩展 ViewController: NSCollectionViewDelegate 中设置了它,但它仍然没有向控制台打印任何内容。
-
我倾向于在设置委托后在代码中添加
print,因为最可能的原因是它实际上没有设置。我不希望您必须将@objc部分放入其中 - 如果没有它,您会遇到什么错误?如果您包含代码的所有相关部分,这可能会有所帮助。 -
我让它在前面没有@obj 部分的情况下工作,但每当我点击一个项目时,它仍然没有在控制台中打印“Selected”。这可能是什么原因。对于看似如此简单的事情,这真的让我望而却步。
-
我很笨...我没有拖动我的 collectionViewDelegate 来连接到我的 ViewController。我是 xCode 的新手,有时不得不做所有这些拖动来设置东西让我失望。
标签: swift macos swift3 nscollectionview nscollectionviewitem