关于block的原理网上有很多,这里简单说下block代替delegate的关键步骤。
ControllerA push B:
1、在B中声明一个block,@property(nonatomic,copy)void(^blockName)(NSString*blockStr);
2、在A中实现这个block,SecondViewController*sec = [[SecondViewControlleralloc]init];
sec.blockName= ^(NSString*bl){
NSLog(@"%@",bl);
};
3、在B中调用这个block,if(self.blockName) {
self.blockName(@"123");
}