为什么Connections Inspector中的'delegate'选项不显示自定义类?

时间:2011-10-05 23:56:41

标签: xcode

我已经通过这种方式在我的自定义类中定义了一个委托协议:

#import <Foundation/Foundation.h>

@protocol myProtocol <NSObject>
-(void)myMethod;
@end

@interface MyClass : NSObject {
    id<myProtocol> delegate;   
}   
@property(nonatomic, assign) id<myProtocol> delegate;
@end

现在在Interface Builder中,我将NSObject拖到'Objects'区域。 将其类设置为MyClass。

为什么连接Inspector没有显示'委托'选项(就像下面的框架类一样)?

enter image description here

1 个答案:

答案 0 :(得分:0)

您需要指定它是IBOutlet,如此:

#import <Foundation/Foundation.h>

@protocol myProtocol <NSObject>
-(void)myMethod;
@end

@interface MyClass : NSObject {
    IBOutlet id<myProtocol> delegate;   
}   
@property(nonatomic, assign) IBOutlet id<myProtocol> delegate;
@end

来自UIKit Constants Reference

  
      
  • IBOutlet中
      用于限定实例变量声明的标识符   这样Interface Builder可以同步显示和连接   与Xcode的出口。在此之前插入此标识符   任何变量声明中的变量类型。
  •