gpt4 book ai didi

macos - 10.11 NSCollectionView : "could not load the nibName: NSCollectionViewItem in bundle NSBundle"

转载 作者:行者123 更新时间:2023-12-01 16:18:32 27 4
gpt4 key购买 nike

我想将 NSCollectionView 与 Swift 的新 API 模型结合使用,根据 https://developer.apple.com/library/mac/releasenotes/AppKit/RN-AppKit/#10_11CollectionView 。由于我更喜欢​​在 IB 中尽可能多地进行操作,因此我想使用内容绑定(bind)并按照链接页面上的将内容绑定(bind)到 NSCollectionView(自 WWDC Seed 以来的新内容) 部分进行操作。

我已从对象库中将 NSCollectionView 拉入 Storyboard,然后通过连接检查器删除了额外生成的原型(prototype) segue,并删除了生成的 NSCollectionViewItem。然后,我将 Collection View 的布局设置为 Flow,并将 Collection View 连接到 View Controller 的 socket 。

接下来,我使用 Xcode 的 View 模板创建了一个单独的 .xib 文件,并放入了必要的 View 。我还引入了“Collection View Item”对象。

然后,我调整了 View Controller 的 viewDidLoad 方法以将 Nib 注册到 Collection View 。

override func viewDidLoad() {
super.viewDidLoad()

let nib = NSNib(nibNamed: "Item", bundle: nil)!
collectionView.registerNib(nib, forItemWithIdentifier: "")
}

最后,我将数组 Controller 连接到 NSCollectionView 的内容绑定(bind)。

但是,当我尝试启动应用程序时,会引发异常:

[NSNib _initWithNibNamed:bundle:options:] could not load the nibName: NSCollectionViewItem in bundle NSBundle

仅当我的数组具有实际内容时才会发生异常,因此仅当需要实例化 CollectionViewItems 时才会发生。

我在这里做错了什么?

此处的示例项目:https://scriptreactor.com/collectionviewtest.zip

最佳答案

问题是在 Collection View Item 的 .xib 中,Item 对象的 View 导出需要链接到 Root View 。此外,需要在 Item 对象的属性检查器中设置 Nib Name。

关于macos - 10.11 NSCollectionView : "could not load the nibName: NSCollectionViewItem in bundle NSBundle",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33453455/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com