私の理解では、委任クラスは常にクラスから継承するNSResponder
クラスであり、からdelegate
継承するクラスでのみ使用できます NSResponder
。NSMenu
から直接継承してNSObject
いるのに、なぜ に表示deletgate
されるの outlets
ですか? それとも、Interface Builder でオブジェクトを Ctrl キーを押しながらクリックした後に表示されるオプションを誤解しているのでしょうか? なるほどOutlets
、 これReferencing outlets
はReceived Actions
どういう意味ですか?問題があれば、Xcode 4 (10.7.3) を使用しています。
1 に答える
0
どこでこれを見たのかわかりませんが、完全に間違っています。委任は単なるパターンであり、委任を実装できるオブジェクトの種類に制限はありません。
実際、独自のクラスで委譲パターンを使用することをお勧めします。
NSMenu
delegate
ヘッダーでそのプロパティをアウトレットとして宣言しているため、Interface Builder に表示されます。次のように、独自のコードで同じことを行うことができます。
@interface YourObject : NSObject {}
@property (weak) IBOutlet id delegate;
@end
Interface Builder ではOutlets
、クラスのヘッダーで定義され、他のオブジェクトに接続できるアウトレットを参照します。 Referencing Outlets
および他のオブジェクトからオブジェクトへReferencing Actions
の接続。
于 2012-02-25T02:27:14.763 に答える