0

この質問が多く寄せられていることは知っていますが、役に立ちません...

私は自分のプロジェクトで多くの委任プロトコルを作成しましたが、これは頻繁に起こりました...

'' のプロトコル宣言が見つかりませんというエラーが発生しました。奇妙なことは、私がこれを初めて行うときです:

   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は見つかりません!! しかし、それはすべきです:(

4

1 に答える 1

0

datePickerController をプロトコルに準拠させていないようです。次のようにする必要があります。

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

datePickerController を UIPickerView として宣言している理由についても質問します。私の例はNSObjectです。

EventViewController を独自のプロトコルに準拠させたい理由もわかりません。ここで削除されたことを確認してください:

@interface EventViewController : UIViewController <UITextFieldDelegate, UIPickerViewDelegate>
于 2012-12-04T15:04:20.177 に答える