IOS界面通信-代理(协议)传值

代理传值在两个界面传值的时候,都是使用在从后向前传值。A为第一个视图控制器,B为第二个试图控制器。

场景:B向A传值。

第一步:首先在B的.h中声明协议以及协议方法。

第二步:紧接着在B的.h中声明一个协议属性:@property (nonatomic,assign) id<协议名称>delegate;

第三步:在B即将pop会前一个界面的时候,在pop方法上一行使用该协议方法传递数据[self.delegate 协议方法名称:(参数 实际上就是我们需要传递给上个界面的数据)]

第四步:在A的.m中,在push到B界面的push方法之前,B对象的初始化之后,指定A对象为代理—— (B对象).delegate = self; 一般情况下都会有一个黄色警告,如何解决呢?看第五步

第五步:在延展或者是.h中文件导入协议<协议名称>

第六步:在A的.m中实现协议方法,取得参数中的值,呈现在当前界面上。

原文地址:https://www.cnblogs.com/ios988/p/5148192.html