0

我正在尝试从一本书中学习 Objective-C,并在尝试在 Xcode 中进行练习时遇到了以下错误(箭头表示问题的地方)。

#import <UIKit/UIKit.h>
#import "FlashCard.h"
#import "CreateCardViewController.h"

--> @interface FlashCardsViewController : UIViewController <CreateCardDelegate> {

上面的代码导致错误:“找不到'CreateCardDelegate'的协议声明。但我正在导入我声明的“CreateCardViewController.h”:@property (nonatomic, assign) id cardDelegate; 所以不知道是什么问题是...

浏览了一些帖子后,我怀疑这可能是由于循环 #import 依赖关系?但如果是这种情况,那么我不确定如何纠正这个错误。如果您有任何建议,请解释并记住我是 Objective-c 的新手。

4

2 回答 2

2

你没有正确定义

@protocol CreateCardDelegate
  ....
@end

在你的CreateCardViewController.h文件中。请查看该定义并发布相关代码以获得更多帮助。

于 2012-07-24T16:20:05.750 回答
1

您需要在某处声明 CreateCardDelegate 协议。这是协议声明的示例(在 .h 文件中)。

@protocol MyClassDelegate <NSObject>

- (void)myClass:(MyClass *)myClass someEventOccured:(NSInteger)value;
- (void)myClass:(MyClass *)myClass someOtherEventOccured:(NSInteger)value;

@end

在您的情况下,您需要@protocol CreateCardDelegate在这些头文件中有一个位置并将其导入到您的 .m 文件中。你?

于 2012-07-24T16:21:12.913 回答