У меня есть NSCollectionView, который отображает набор элементов, которые называются «ImageCollectionViewItem». У меня есть файл ImageCollectionViewItem.xib, в котором есть только NSView, покрывающий элемент. Я хочу иметь возможность динамически изменять то, что находится в этом представлении, но когда я пытаюсь ссылаться на него, это ноль. Я уже проверял такие вопросы, как: выходы в UIViewController nil в viewdidload, это не моя проблема, я связал ее и у меня залитый кружок
Вот расширение viewcontroller:
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
}
}
А вот и код ImageViewCollectionItem.
class ImageCollectionViewItem: NSCollectionViewItem {
@IBOutlet weak var iconView: NSView!
var numItem: Int?
override func viewDidLoad() {
super.viewDidLoad()
// Do view setup here.
view.wantsLayer = true
view.layer?.backgroundColor = NSColor.whiteColor().CGColor
}
}