我有两个VC:StepThreeViewController和QuoteViewController。 我试图通过使用Delegate b / c将数据从QuoteViewController传递回StepThreeViewController一旦我有数据,我想弹出/关闭QuoteViewController并将数据传递给StepThreViewController。
我收到错误,找不到代理协议!我按照youtube教程阅读了很多关于StackOverflow的评论,但似乎无法找到错误!
我还确保我的#import头文件存在。
我的代码的GitHub在这里找到: https://github.com/aspirasean/BoxRocket.git
谢谢!
答案 0 :(得分:2)
我认为在QuoteViewController.h
下您已导入"StepThreeViewController.h
"可能不需要。我已注释掉该行,它可以编译而没有任何错误。
#import <UIKit/UIKit.h>
//#import "StepThreeViewController.h"
#import "MBProgressHUD.h"
如果您需要在 QuoteViewController 中使用 StepThreeViewController ,您可能需要查看此帖子:Cannot find protocol declaration
<强>更新强>:
在 StepThreeViewController.h 下,您应该: -
@property (nonatomic, strong) QuoteViewController *controller;
然后在viewDidLoad
中,你应该
self.controller.delegate=self;
您必须使 StepThreeViewController 成为 QuoteViewController 的委托才能使委托方法正常工作。
要了解有关Objective-C中委托的详情,请访问:How do I create delegates in Objective-C?