#pragma mark--制定协议第一步: 声明协议
#pragma mark--制定协议第二步: 添加代理人属性
#pragma mark--制定协议第三步: 让代理人执行协议方法
@protocol ForthViewControllerDelegate <NSObject>
-(void)passString:(NSString *)str;
@property (nonatomic, weak)id<ForthViewControllerDelegate> delegate;
if (self.delegate && [self.delegate respondsToSelector:@selector(passString:)]) {
[self.delegate passString:self.textField.text];
}
#pragma mark--使用协议第一步: 签订协议
#pragma mark--使用协议第二步: 指定代理人
#pragma mark--使用协议第三步: 实现协议方法
@interface ThirdViewController () <ForthViewControllerDelegate>
forthVC.delegate = self;
-(void)passString:(NSString *)str
{
self.label.text = str;
}
#warning 属性传值1: 声明对应类型的属性
@property (nonatomic, strong) NSString *str;
@property (nonatomic, strong) UILabel *label;
#warning 属性传值2: 值的使用
self.label.text = self.str;