2012-12-04 94 views
0

我知道这个问题已经被问了很多,但它并不能帮助我的协议的声明...无法找到“”

我已经在我的项目做了很多委托协议的,但这个发生了很多...

我得到一个错误无法找到协议声明''。奇怪的是,当我做到这一点的第一次:

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 !!但应该:(

+0

我想你已经申报数据ForEventDelegate作为私人appDelegate.h –

+4

旁注:请大写协议和类名的第一个字母。 – 2012-12-04 14:59:06

+0

准确地在哪个文件中声明协议? –

回答

0

看来你还没有做出datePickerController符合协议,应该是:

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

我还要问你为什么声明datePickerController作为一个UIPickerView见我的例子就是NSObject的。

我也是不知道你为什么会想EventViewController以符合其自己的协议看它这里删除。

@interface EventViewController : UIViewController <UITextFieldDelegate, UIPickerViewDelegate>