1
現在、SwiftでOS Xアプリケーションを開発中です。私はメインビューでNSCollectionView
を使用しようとしていますので、NSCollectionView
オブジェクトを.xib
ファイルに追加しました。私は、データソースをリンクしてファイルの所有者に委任する以外のことは何も変更していません。NSCollectionViewを使用するとアサーションエラーが発生する
これは私がNSCollectionViewDataSource
プロトコルを実装するために書かれているコードです:私は自分のコードを実行したときに
/// MARK: - NSCollectionViewDataSource
extension MainViewController: NSCollectionViewDataSource {
func collectionView(collectionView: NSCollectionView, numberOfItemsInSection section: Int) -> Int {
return 10
}
func collectionView(collectionView: NSCollectionView, itemForRepresentedObjectAtIndexPath indexPath: NSIndexPath) -> NSCollectionViewItem {
let itemView = collectionView.makeItemWithIdentifier("fileItem", forIndexPath: indexPath)
itemView.textField!.stringValue = "TEST"
return itemView
}
}
は今、私がキャッチされない例外を取得し、アプリケーションのクラッシュ、そして私がなぜわからないのですが。ここに便利だと思うスタックトレースの一部です:
2016-04-02 18:58:02.768 Pilot[5442:679789] *** Assertion failure in -[NSCollectionView setItemPrototype:], /Library/Caches/com.apple.xbs/Sources/AppKit/AppKit-1404.46/Binding.subproj/NSCollectionView.m:1286
2016-04-02 18:58:02.971 Pilot[5442:679789] An uncaught exception was raised
2016-04-02 18:58:02.971 Pilot[5442:679789] Use -registerNib:forItemWithIdentifier: and -registerClass:forItemWithIdentifier: with new CollectionViews
ご協力いただければ幸いです。
"fileItem"をregisterNibまたはregisterClassに登録しましたか?それ以外の場合は.xibファイルに作成/配線しますか? – PRB
@PRB "fileItem"はどこにも登録しませんでした。これは問題かもしれません。私はそのパラメータが何を意味し、どのようにそれを登録すべきか正確にはわかりません。 – Rohan
ストーリーボードを使用してレイアウトを設計した場合は、コレクションビュー内にコレクションビューセルが存在する必要があります。 Attributes Inspector(右側のStoryboardのUtilitiesビュー)に移動して、セルに識別子「fileItem」(Collection Reusable Viewの下)を指定します – PRB