問題タブ [nscollectionviewitem]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
swift - NSCollectionViewItem はインスタンス化されません
ここで少し迷っています: colorPicker のように機能するボタンを作成しました: クリックすると、ポップオーバーに collectionView が表示されます。私は最初にビュー+コレクションビュー(スクロールビュー+クリップビューとして埋め込まれた)を含むペン先ファイルでそれを行いました。ものは問題なく動作します。
nib ファイルは非常に単純なので (また、ビューをプログラムで設計する際のコーディング スキルを向上させるため)、nib ファイルを取り除き、不足している部分をコードで記述することにしました。問題は、collectionView の内容を除いて、なんとか仕事をやり遂げることです。詳細な調査の結果、メソッド内で次のことが明らかになりました。
データソース、メソッドを管理することになっている
動作しません。実際には、次のとおりです。
私がステップインしたときにデバッガーが言うように、アイテムは初期化されていません(nilではなく、初期化されていません)。どうやら、makeItem メソッドは、作成したサブクラスから collectionViewItem をインスタンス化することはありません。両方のプロジェクトがこれらの点で同一であるため、識別子は問題なく、nib バージョンと同様に collectionView.register 関数が呼び出されます。makeItem 関数は、サブクラス化した NSCollectionViewItem の loadView メソッドを呼び出しません。
どんな手掛かり?
ジョシュ
swift - NSCollectionView は、OS X でセグエのアイテムを選択します
私は NSCollectionView API を調べましたが、私が見た特定のチュートリアルに一致するものは見つかりませんでした。Xcode では、エラーが発生しないように、次のようにメソッドを記述する必要があります。
NSCollectionView のアイテムをクリックしても何も起こらず、印刷ステートメントがコンソールに表示されません。NSCollectionView から項目を選択する正しい方法は何ですか?