小编con*_*ay7的帖子

NSCollectionViewItem 在 itemForRepresentedObjectAtIndexPath 中有 nil 个出口

我有一个 NSCollectionView 显示一堆称为“ImageCollectionViewItem”的项目。我有一个 ImageCollectionViewItem.xib 文件,它只有一个覆盖该项目的 NSView。我希望能够动态更改该视图中的内容,但是当我尝试引用它时,它为零。我已经检查过这样的问题:UIViewController nil in viewdidload 中的 outlet,这不是我的问题,我链接了它,我有实心圆圈

这是视图控制器扩展:

extension ViewController : NSCollectionViewDataSource {

    func collectionView(collectionView: NSCollectionView, numberOfItemsInSection section: Int) -> Int {
        return titles.count
    }
    func collectionView(collectionView: NSCollectionView, itemForRepresentedObjectAtIndexPath indexPath: NSIndexPath) -> NSCollectionViewItem {
        let item = collectionView.makeItemWithIdentifier("ImageCollectionViewItem", forIndexPath: indexPath) as! ImageCollectionViewItem

        //This is what is nil:
        let thisView = item.iconView

        return item
    }

}
Run Code Online (Sandbox Code Playgroud)

然后这里是 ImageViewCollectionItem 代码

class ImageCollectionViewItem: NSCollectionViewItem {

    @IBOutlet weak var iconView: NSView!

    var numItem: Int?

    override func viewDidLoad() { …
Run Code Online (Sandbox Code Playgroud)

cocoa nscollectionview nscollectionviewitem swift

1
推荐指数
1
解决办法
763
查看次数