2011-11-08 99 views
0

我已经声明了一个协议,一切似乎都很好,即使Xcode自动完成协议的名称,如果我尝试采用它,但是当我编译该项目时,它会一直告诉我“找不到协议声明“。这很奇怪,因为我是在同一班上采用的第二个协议,我没有与前者有任何错误!下面是代码:iPad开发:找不到协议声明

下面我宣布的协议:

// LoginViewController.h 
#import <UIKit/UIKit.h> 

@protocol LoginEndDelegate <NSObject> 

-(void)doneLogin; 


@end 

在这里,我试图通过它:

#import "LoginViewController.h" 
#import "WebServiceAPI.h" 

@protocol SubstitutableDetailViewController 
- (void)showRootPopoverButtonItem:(UIBarButtonItem *)barButtonItem; 
- (void)invalidateRootPopoverButtonItem:(UIBarButtonItem *)barButtonItem; 
@end 


@interface RootViewController : UITableViewController <UISplitViewControllerDelegate,WebServiceAPIDelegate,LoginEndDelegate> { 

请帮我家伙..谢谢!

回答

0

尝试预处理导入第二个代码段的源文件,并确保在接口声明之前出现LoginEndDate声明。 (产品菜单在XCode 4的“Generate Output”下有一个“Generate Preprocesssed file”项目)。

很可能你有一个导入依赖周期。 LoginViewController.h可能导入导致接口声明在协议声明之前导入的内容。

+0

问题是一个导入依赖周期。感谢帮助 – LuckyStarr

相关问题