問題タブ [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.

0 投票する
1 に答える
524 参照

objective-c - NSCollectionView に NSPopover を表示しますか?

(注: 質問は以前にも出されており、1 年以上前に決定的ではない結果が得られました。願わくば、もう少し詳しく知り、解決できますか?)

ダブルクリックしたときに NSCollectionItem の上に NSPopover を表示しようとしています。私の NSCollectionView は正しく設定され、入力を受け取ります。

(コードをコピーして他の NSView サブクラスに貼り付けると、問題なく動作します。NSCollectionView には、混乱しているように見えるものがあります。)

コード:

BIECollectionViewItem.h

BIECollectionViewItem.m

mouseDown イベントにログステートメントを追加すると、イベントが発生していることが確認できます。しかし、NSPopover は表示を拒否します。

NSPopover を NSCollectionView の上に表示する方法を知っている人はいますか?

0 投票する
1 に答える
555 参照

objective-c - NSCollectionViewItem内のボタンのアクションを設定する方法

NSCollectionViewを使用して、バインドされた配列コントローラーの画像のリストを表示していました。また、各画像の左上隅に削除ボタンを追加して、誰かがボタンを押すと、対応するオブジェクトが削除されるようにします。アレイコントローラー。

ただし、NSCollectionViewItemをカスタムクラスのサブクラスにし、削除ボタンのアクションをカスタムクラスで記述されたメソッドに設定しようとすると、次のようなエラーが報告されます。

'アクションXXX:をクラスNSCollectionViewItemのターゲットに接続できませんでした'

また、NIBファイルにアレイコントローラーオブジェクトを追加しようとして失敗しました。

すべてをOKにするにはどうすればよいですか?

0 投票する
1 に答える
508 参照

objective-c - NSCollectionView でボタンがクリックされたビューのインデックスを取得します

私は持っており、そのコレクション ビューNSCollectionViewとして機能するカスタム ビューを追加しています。NSCollectionViewItem私のコレクションViewItemには、NSButton他のさまざまな要素があります。onButtonClickそのボタンに接続されているメソッドがあります。ここで、collectonViewItem の 5 つのアイテムを collectionView に追加するとします。ボタンがクリックされた場所からビューのインデックスを取得するにはどうすればよいですか?

内部onButtonClickでは、次のコードを試しましたが、どのボタンをクリックしても常に 0 が返されます。

これを達成する正しい方法は何ですか?

0 投票する
1 に答える
255 参照

cocoa - NSArrayController selectedIndex は常にゼロです

オブジェクトの 1 つで、配列にバインドされた NSArrayController があります。NSArrayController を含む nib ファイルに追加される NSObject から継承するオブジェクトがあります。そのオブジェクトには、タイプ TextureAtlas (私が定義したタイプ) の textureAtlas というプロパティがあります。タイプ TextureAtlas は、textures と呼ばれる NSMutableArray プロパティを定義します。このテクスチャ配列にバインドしています (したがって、パスは「textureAtlas.textures」のようなものです)。

私の問題は、NSCollectionView で新しいテクスチャを選択するたびに、配列コントローラーの選択でいくつかのプロパティにバインドされている他のコントロールが変更されないことです。実際、NSArrayController の selectedIndex プロパティは常にゼロです。ただし、アトラスにテクスチャを動的に追加すると、テクスチャはコレクション ビューに正しく追加されます。コレクション ビューでテクスチャを選択できます (選択枠は、最後に選択したテクスチャの周りに正しく描画されます)。変更されないselectedIndexだけです。私は何が欠けていますか?

0 投票する
1 に答える
854 参照

cocoa - NSCollectionViewItem、コンテンツに合わせたサイズ

文字列のコレクションにバインドしている NSCollectionView があります。

NSCollectionViewItem に使用しているビューは非常にシンプルで、単に NSTextField が含まれています。

NSView - NSTextField

文字列の長さは可変です。文字列の長さを考慮して、テキスト フィールド/ビューのサイズを調整する方法はありますか?

小さい文字列の場合、テキストはビューの中央に配置されます。ただし、より長い文字列の場合、テキストは切り捨てられます。

それが役立つ場合、コレクション内のすべての文字列はほぼ同じ長さになります。

0 投票する
1 に答える
1082 参照

objective-c - NSCollectionViewの中央に配置されたアイテム

OS X用のアプリケーション用のシンプルなギャラリーを開発しています。デフォルトでは、aのアイテムはNSCollectionView左側にあります。アイテムを幅の中央に配置するにはどうすればよいですか?この画像のように:iPhoto

0 投票する
2 に答える
2284 参照

objective-c - 内部アイテムに合うようにNSCollectionViewのサイズを変更しますか?

NSCollectionViewのサイズをすべてのアイテムのサイズに合わせて変更するにはどうすればよいですか?

私はそのようなことを試みました:

そして、私が得たのは恐ろしい結果だけでした:collectionViewが歪んでいました。以前は親ビューよりも小さく、それによって親ビューを埋めるように拡張されました。

注意:コレクションビューのスクロールバーを削除しました。内部アイテムはNSBoxです。

追伸:これは私がサイズ変更せずに持っているものです;

ここに画像の説明を入力してください

0 投票する
1 に答える
832 参照

cocoa - NSCollectionViewItem のカスタム ビューのバインド

NSCollectionViewモデル オブジェクトの配列にバインドしました。コレクション ビューのアイテムをレンダリングするためのプロトタイプは、カスタムサブクラスNSViewを使用するように設定されています。NSView

実行時に、各配列要素のコレクション ビューに (ジェネリック) ビューが表示/インスタンス化されますが、すべて問題ありません。

ただし、個々のビュー インスタンスから配列オブジェクトにアクセスして、配列内の各要素に固有の実際のデータをレンダリングする方法がわかりません。つまり、コレクション ビューで「セル」を構成するために使用されるプロトタイプに
データを接続するにはどうすればよいのでしょうか。NSView

  • その特定のビューではアウトレットが機能しないようです。それらはすべてnil実行時です。

  • バインディングはバニラでは機能しませんNSView(バニラ ビューの非表示バインディングとツールチップバインディングは別として..) -NSViewサブクラスの IB に表示される新しいバインディングを追加することはできませんね。

どんなヒントでも大歓迎です!

0 投票する
1 に答える
1934 参照

objective-c - NSCollectionViewItemのrepresentedObject値を取得しますNSButtonクリック

私はいくつかの質問を読みましたが、いくつかの非常に紛らわしいものを見つけました。彼らが私の質問に答えるかどうかは本当にわかりません。

NSCollectionView実装して接続しましたがCore Data context、すべてが正しく表示されます。

今私が持っているのはbuttonsにありview prototype、このボタンをクリックするとrepresentedObject、その複製されたビューの値を取得する必要があります。

私は読んだり読んだりしましたが、混乱する部分もあるので、簡単な説明を探しています。

お時間をいただきありがとうございます。