ios开发的block反向传值

block 的反向传值,一直以来都是copy, 今天写出来用来加深印象, 也给一些懒哥们copy的方便些。不多说,直接上代码。

#import <UIKit/UIKit.h>

//第一步(第二个页面.h)

typedef void (^secondVcBlock)(NSString*);

@interface SecondViewController : UIViewController

//第二步(第二个页面.h)声明一个属性

@property(nonatomic,copy)secondVcBlock clickStrBlock;

@end

- (IBAction)return:(id)sender {

    //第三步(第二个页面的.m)

    self.clickStrBlock(@"good");

    [self dismissViewControllerAnimated:YES completion:nil];

}

-(void)next

{

    SecondViewController *sec = [[SecondViewController alloc] init];

    //第四步(第一个页面的push或者present的位置)

    sec.clickStrBlock = ^(NSString *str)

    {

        NSLog(@"做点什么呢%@",str);

    };

    [self presentViewController:sec animated:YES completion:nil];

}

原文地址:https://www.cnblogs.com/godlovexq/p/5142798.html