Chr*_*ris 1 delegates protocols objective-c
所以,我有一个类CommentViewController.h中,我有
#import "FirstViewController.h"
@protocol CommentViewControllerDelegate;
@interface CommentViewController : UIViewController {
id <CommentViewControllerDelegate> delegate;
}
@property (nonatomic, assign) id <CommentViewControllerDelegate> delegate;
- (IBAction)submit:(id)sender;
-(IBAction)cancel:(id)sender;
@end
@protocol CommentViewControllerDelegate
-(void)commentViewControllerDidFinish:(CommentViewController *)controller;
@end
Run Code Online (Sandbox Code Playgroud)
我在实现中合成了委托
我尝试访问协议FirstViewController.h:
#import "CommentViewController.h"
@interface FirstViewController : UIViewController <CommentViewControllerDelegate>
Run Code Online (Sandbox Code Playgroud)
并在植入FirstViewController:
- (void)commentViewControllerDidFinish:(CommentViewController *)controller {
[self dismissModalViewControllerAnimated:YES];
}
Run Code Online (Sandbox Code Playgroud)
错误出现在这一行:
@interface FirstViewController : UIViewController <CommentViewControllerDelegate>
Run Code Online (Sandbox Code Playgroud)
错误: Cannot find protocol declaration for 'CommentViewControllerDelegate'; did you mean 'UISplitViewControllerDelegate'?
我错过了什么吗?我总是遇到协议和代理问题.
您的包含文件中有一个循环.
从以下行中删除此行CommentViewController.h:
#import "FirstViewController.h"
Run Code Online (Sandbox Code Playgroud)
它没有在头文件中引用,如果是,你可以简单地把:
@class FirstViewController;
Run Code Online (Sandbox Code Playgroud)
而不是包括整个文件.
| 归档时间: |
|
| 查看次数: |
1056 次 |
| 最近记录: |