我知道这个问题已经被问了很多,但它对我没有帮助......
我在我的项目中做了很多委托协议,但这发生了很多......
我收到错误,找不到"的协议声明。奇怪的是,当我第一次这样做时:
id<dataForEventDelegate> dataEventDelegate;
它有效,我构建,我尝试重建,PAF 不再找到协议......
我的代码在我的委托中看起来像这样。H :
@protocol dataForEventDelegate <NSObject>
-(void)setStartDateLabel:(NSDate *)startDaleLabel;
-(void)setEndDateLabel:(NSDate *)endDaleLabel;
-(void)setDefaultCalendarLabel;
@end
@interface EventViewController : UIViewController <UITextFieldDelegate, UIPickerViewDelegate, dataForEventDelegate>
这是我的 file.h 中,应该使用委托
#import "EventViewController.h"
@interface datePickerController : UIPickerView <UIPickerViewDelegate, UIPickerViewDataSource>
{
id<dataForEventDelegate> dataEventDelegate;
NSMutableArray *dateArray;
}
@property(nonatomic, strong) id<dataForEventDelegate> dataEventDelegate;
找不到这个dataForEventDelegate
!!但它应该
看来你还没有使datePickerController符合协议,应该是:
@interface datePickerController : NSObject <UIPickerViewDelegate, UIPickerViewDataSource, dataForEventDelegate>
我还要质疑你为什么要将datePickerController声明为UIPickerView。请参阅我的示例是 NSObject。
我也不确定为什么您希望EventViewController符合自己的协议。在此处查看已删除的内容:
@interface EventViewController : UIViewController <UITextFieldDelegate, UIPickerViewDelegate>