我正在尝试为自定义UIView创建委托协议.这是我的第一次尝试:
@protocol FunViewDelegate @optional - (void) funViewDidInitialize:(FunView *)funView; @end @interface FunView : UIView { @private } @property(nonatomic, assign) iddelegate; @end
这不起作用,因为在FunViewDelegate声明时尚未声明FunView接口.我试过在@protocol之前添加一个原型ala C++:
@interface FunView;
但这只会驱动编译器.我该怎么做?
转发类语法@class Foo;
不是@interface Foo;
.
您似乎可以转发声明协议:
@protocol FunViewDelegate; @interface FunView : UIView { @private iddelegate; } @property(nonatomic, assign) id delegate; @end @protocol FunViewDelegate @optional - (void) funViewDidInitialize:(FunView *)funView; @end