场景分析
- 有两个页面:第1个页面、第2个页面。
- 第1个页面上有一个label,和一个按钮。
- 第2个页面上有一个txetField,和一个按钮。
- 点击第1个页面的按钮会跳转到第2个页面。
- 在第二个页面往txetField中可以输入文字,点击按钮会返回到第1个页面,并且会将txetField中的文字传到第1个页面并显示到第1个页面的label上。
代码
第2个页面
//第1步:声明block
@property (nonatomic, copy)void ^(myblock)(NSString *)text;
//第2个页面按钮的点击事件
-(void) click{
//第2步:得到要传的值
self.myblock(_textf.text);
/*
* ...
*跳转操作
*/
}
第1个页面
//第一个页面中按钮的点击事件
-(void)click{
secondViewController *s = [[secondViewController alloc]init];
//第3步:回调,把上一个页面的值传过来
s.myblock = ^(NSString *str){
self.label.text = str;
}
}