我正试图像这样推动一个视图控制器:
SampleViewControllerB *svcb = [self.storyboard instantiateViewControllerWithIdentifier:@"viewB"];
svcb.delegate = self;
[self.navigationController pushViewController:svcb animated:YES];
如果我删除svcb.delegate = self;
行,它会编译正常并且正常工作。但是,如果我尝试添加它,它将无法编译并提供错误
Property 'delegate' not found on object of type 'SampleViewControllerB *'
有人知道如何解决这个问题吗?提前谢谢!
答案 0 :(得分:2)
这是你的问题。您必须在班级中定义自己的delegate
属性,并自行调用它。一定要记得制作委托协议!
答案 1 :(得分:1)
UIViewControler
没有委托属性,如果您需要向SampleViewControllerB
添加委托,则需要明确定义
答案 2 :(得分:1)
使用SampleViewControllerB的.h中的parentViewController变量说..
ParentViewController *parentObject ;
并在相同的
中使其成为自豪@property(nonatomic,retain) ParentViewController *parentObject ;
并在.m中合成SampleViewControllerB类
@synthesize parentObject ;
现在使用你推动控制器的代码
SampleViewControllerB *svcb = [self.storyboard instantiateViewControllerWithIdentifier:@"viewB"];
svcb.parentObject = self;
[self.navigationController pushViewController:svcb animated:YES];
希望这会对你有所帮助
答案 3 :(得分:0)
对于Delegate属性,您需要在SampleViewControllerB类的协议中添加委托方法。