#import "EVNFirViewController.h"
@interface EVNFirViewController ()
@end
@implementation EVNFirViewController
- (void)viewDidLoad {
[super viewDidLoad];
self.navigationItem.title = @"EVNFirView";
[self.view setBackgroundColor:[UIColor whiteColor]];
UIBarButtonItem *rightBarBtn = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemBookmarks target:self action:@selector(goNext:)];
self.navigationItem.rightBarButtonItem = rightBarBtn;
self.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"返回Fir" style:UIBarButtonItemStylePlain target:nil action:nil];
self.label = [[UILabel alloc] initWithFrame:CGRectMake(20, 100, self.view.frame.size.width - 40, 70)];
self.label.textColor = [UIColor redColor];
self.label.backgroundColor = [UIColor grayColor];
[self.view addSubview:self.label];
}
- (void) goNext:(UIBarButtonItem *)sender
{
EVNSecViewController *sec = [[EVNSecViewController alloc]init];
sec.myblock = ^(NSString *str){
self.label.text = str;
};
[sec tranData:^(NSString *str) {
self.label.text = str;
NSLog(@"str is value:%@",str);
}];
[self.navigationController pushViewController: sec animated:YES];
}
@end
页面二:
#import <UIKit/UIKit.h>
#import "EVNSecViewController.h"
typedef void (^MyBlock)(NSString *str);
@interface EVNSecViewController : UIViewController
@property (copy, nonatomic) MyBlock myblock;
-(void)tranData:(MyBlock)block;//这个地方不是必须这样,只是为了容易理解。注意蓝色部分。
@end
#import "EVNSecViewController.h"
@interface EVNSecViewController ()
@end
@implementation EVNSecViewController
- (void)viewDidLoad
{
[super viewDidLoad];
self.navigationItem.title = @"SecView";
[self.view setBackgroundColor:[UIColor brownColor]];
UIBarButtonItem *rightBarbtn = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:@selector(BackFirView:)];
self.navigationItem.rightBarButtonItem = rightBarbtn;
}
- (void) BackFirView:(UIBarButtonItem *)sender
{
if (self.myblock !=nil)
{
self.myblock(@"asdfasdf");
}
[self.navigationController popToRootViewControllerAnimated:YES];
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
}
-(void)tranData:(MyBlock)block
{
self.myblock = block;
}
/**********
-(void)viewWillDisappear:(BOOL)animated
{
if (self.myblock !=nil)
{
self.myblock(@"asdfasdf");
}
}
**********/
@end