我无法访问xib文件中textLabel的stringValue,我将其用于我的通用NSCollectionViewItem。
从xib-file注册collectionView:
override func viewDidLoad() {
super.viewDidLoad()
let item = NSNib(nibNamed: NSNib.Name("collectionViewItem"), bundle: nil)
collectionView.register(item, forItemWithIdentifier: NSUserInterfaceItemIdentifier("collectionViewItem"))
collectionView.delegate = self
collectionView.dataSource = self
}
制作NSCollectionViewItem:
func collectionView(_ collectionView: NSCollectionView, itemForRepresentedObjectAt indexPath: IndexPath) -> NSCollectionViewItem {
let item = collectionView.makeItem(withIdentifier: NSUserInterfaceItemIdentifier("collectionViewItem"), for: indexPath)
// Here I want to access the stringValue of the textLabel within my collectionViewItem.
return item
}
关于如何创建对此textLabel的引用并对其进行操作的任何想法?
答案 0 :(得分:0)
创建一个覆盖NSCollectionViewItem的自定义类MyCollectionViewItem。添加textLabel成员并将其链接到您的nib文件中。然后在使用makeItem时强制转换:
let item = collectionView.makeItem(withIdentifier: NSUserInterfaceItemIdentifier("collectionViewItem"), for: indexPath) as! MyCollectionViewItem