无法找到''的协议声明

时间:2012-12-04 14:53:35

标签: objective-c ios delegates protocols

我知道这个问题已被问过很多,但它对我没有帮助......

我在我的项目中制作了很多委托协议,但这发生了很多......

我收到错误找不到''的协议声明。奇怪的是,当我第一次这样做时:

   id<dataForEventDelegate> dataEventDelegate;

它有效,我建立,我尝试重建,PAF不再找到protocole ...

我的代码看起来像我的代理.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!但它应该:(

1 个答案:

答案 0 :(得分:0)

看来你没有使datePickerController符合协议,应该是:

@interface datePickerController : NSObject <UIPickerViewDelegate, UIPickerViewDataSource, dataForEventDelegate>

我还会质疑你为什么要将datePickerController声明为UIPickerView。请参阅我的示例是NSObject。

我也不确定为什么你希望EventViewController符合它自己的协议。看到它在这里删除:

@interface EventViewController : UIViewController <UITextFieldDelegate, UIPickerViewDelegate>