1

コレクションビューアイテムとそのプロトタイプビューがあります。そのプロトタイプビュー内に、小さなxボタンがあります。そのボタンで、その上にある正確なコレクションビューアイテムを削除したいと思います。

xボタンの周りのスペースをクリックすると、選択したアイテムを削除できますが、アイテムをクリックする前にボタンをクリックすると、最後に選択したアイテムのみが消去されます。

アイデア?

4

1 に答える 1

2

さて、これは楽しいはずです!

ステップ1:のメソッドシグネチャを次のように変更removeQuartzPlayerします。

-(void)removeQuartzPlayer:(id)aPlayer;

aPlayer削除したいプレーヤーはどこになりますか。実装を次のように変更します。

[quartzPlayerArrayController removeObject:aPlayer];

ここquartzPlayerArrayControllerは、コレクションビューが接続されているNSArrayControllerへのアウトレットの名前に置き換えられます。まだ持っていない場合は、IBOutletを作成する方法を理解できると信じています。

ステップ1ポイント5:ボタンとremoveQuartzPlayerIBのメソッドの間の接続を削除します。

ステップ2:IBインスペクターの[バインディング]ペインに切り替えます。「ターゲット」バインディングを選択し、次のようにします。

IBバインディングペイン1

「コントローラー」ポップアップは、コントローラーを指すオブジェクトに設定されます。

ステップ3:「引数」バインディングを選択し、次のようにします。

IBバインディングペイン2

「コレクションビューアイテム」ポップアップが表示される場所...アイデアが浮かびます。

ステップ4:Cocoa Bindingsの(暗い)魔法によってもたらされた新しいボタンをお楽しみください!

免責事項:私は実際にこれをテストしていませんが、似たようなことをするボタンがあるので、動作するはずです。私が何かを台無しにした場合はコメントしてください。
ビリー

于 2010-12-13T21:34:52.750 に答える