1.B 界面设置代理
#import <UIKit/UIKit.h>
//设置代理
@protocol myDelegate<NSObject>
//定义一个协议的方法
-(void)sendValue:(NSString *)value;
@end
@interface ZYTwoViewController : UIViewController
//声明这个代理
@property(nonatomic) id<myDelegate>delegata;
@end
#pragma mark 按钮的点击事件
- (IBAction)returnView:(id)sender {
[self.delegata sendValue:@"cao_mao"];//点击这个按钮触发代理方法;
[self dismissViewControllerAnimated:YES completion:nil];//返回上一个界面
}
3.A 界面遵循这个代理
#import <UIKit/UIKit.h>
#import "ZYTwoViewController.h"
@interface ZYViewController : UIViewController<myDelegate>//A界面中的这个类遵循代理方法
@end
//当页面跳转是调用这个方法
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
if ([segue.identifier isEqualToString:@"modal"]) {
ZYTwoViewController *twoViewController = (ZYTwoViewController *)segue.destinationViewController;
twoViewController.delegata = self;
}
}
//代理方法
-(void)sendValue:(NSString *)value
{
NSLog(@"value--------------->%@",value);
self.value_lab.text =value;
}