Ios 使用代理通过多个ViewController传回数据
我已经成功地学习了如何使用代理。到目前为止,我已经学会了如何通过prepareForSegue方法使用故事板将数据传递给secondViewController,然后使用代理将数据从secondViewController返回给第一个ViewController 问题是当我创建第三个DViewController时,如下所示: 视图控制器>>第二视图控制器>>第三视图控制器。 (委托协议在第三个IEWController中设置) 我的代理可以很好地将数据从thirdViewController传递到secondViewController。问题在于从secondViewController传回viewController时Ios 使用代理通过多个ViewController传回数据,ios,xcode,Ios,Xcode,我已经成功地学习了如何使用代理。到目前为止,我已经学会了如何通过prepareForSegue方法使用故事板将数据传递给secondViewController,然后使用代理将数据从secondViewController返回给第一个ViewController 问题是当我创建第三个DViewController时,如下所示: 视图控制器>>第二视图控制器>>第三视图控制器。 (委托协议在第三个IEWController中设置) 我的代理可以很好地将数据从thirdViewController传
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
SecondViewController *page2 = [[SecondViewController alloc]init];
[[segue identifier] isEqual:@"page2"];
page2 = [segue destinationViewController];
page2.delegate = self; // this is the problem ??
}
我得到的错误如下:未找到属性“delegate”。
代理不能在多个视图(在一个链中)中工作的问题是这样的吗???有几个提示:
SecondViewController*page2=[[page2 alloc]init]代码>
SecondViewController
和Page2
之间的关系是什么
SecondViewController
中定义了delegate
viewController.m
中导入“SecondViewController.h”@谢谢你的提示,是的,我更改了提示1上的错误。然而,没有运气。我又重新编写了代码-这次没有错误,但我又遇到了同样的问题-还有其他想法吗???@anO我现在发现你不能链接委托消息。所以我想做的是不可能的。我所说的“相同问题”是指无法将委托消息从第三个控制器传递到第二个viewController和viewController。我知道我可以用NSNotification做这件事,但我试着用代理做这件事。我不明白你为什么不能。只需在vc1的
-delegateMethodOfVC2
实现中调用[delegate-delegateMethodOfVC1]
,其中delegate=vc
。