ViewController.h 需要实现
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController
- (void)sendMessage:(void(^)(NSString *))blc;
@end
ViewController.m里面需要实现
#import "ViewController.h"
#import "secondeViewController.h"
@interface ViewController ()
{
void (^tempBloc)(NSString *);
UITextField *textField;
}
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
UIButton *button = [UIButton new];
button.backgroundColor = [UIColor redColor];
button.frame = CGRectMake(100, 100, 50, 50);
[button addTarget:self action:@selector(gotoSecondeViewController) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:button];
textField = [UITextField new];
textField.frame = CGRectMake(100, 300, 200, 50);
[self.view addSubview:textField];
}
- (void)gotoSecondeViewController{
secondeViewController *KsecondeViewController = [secondeViewController new];
KsecondeViewController.VC = self;
[self presentViewController:KsecondeViewController animated:YES completion:^{
}];
if (tempBloc) {
tempBloc(textField.text);
}
}
- (void)sendMessage:(void (^)(NSString *))blc{
tempBloc = ^(NSString *str){
blc(str);
};
}
secondeViewController.h里面需要实现
#import <UIKit/UIKit.h>
#import "ViewController.h"
@interface secondeViewController : UIViewController
@property (nonatomic,strong)ViewController *VC;
@end
secondeViewController.m里面需要实现
#import "secondeViewController.h"
#import "ViewController.h"
@interface secondeViewController ()
@end
@implementation secondeViewController
- (void)viewDidLoad {
[super viewDidLoad];
self.view.backgroundColor = [UIColor whiteColor];
UILabel *lable = [UILabel new];
lable.backgroundColor = [UIColor greenColor];
lable.frame = CGRectMake(100, 100, 200, 50);
[self.view addSubview:lable];
[_VC sendMessage:^(NSString *str) {
lable.text = str;
}];
}