码迷,mamicode.com
首页 > 其他好文 > 详细

UI_Block传值

时间:2015-07-16 19:50:12      阅读:113      评论:0      收藏:0      [点我收藏+]

标签:ui   block传值   代理   协议   

block 传值

在第二个控制器里面声明block

// 类似代理的协议
typedef void(^TransmitValueBlock) (NSString *);

@interface SecondViewController : UIViewController

// 类似代理的定义
@property (nonatomic, copy) TransmitValueBlock ablock;

// 可以不用写 typedef
@property (nonatomic, copy) void (^yadongBlock) (NSString *);

@end

在第一个控制器里面实现 block 体

- (void)buttonDidClicked:(UIButton *)sender
{
    SecondViewController *secondVC = [[SecondViewController alloc] init];

    // 第一个页面实现 block 体
    secondVC.ablock = ^(NSString *text){

        NSLog(@"%@", text);

        self.rootView.label.text = text;
    };

    [self.navigationController pushViewController:secondVC animated:YES];
}

第二个页面调用

- (void)leftBarButtonItemAction:(UIButton *)sender
{
    // 第二个页面调用,传一个参数
    self.ablock(self.rootView.textfield.text);

    [self.navigationController popToRootViewControllerAnimated:YES];
    NSLog(@"fanhui");
}

缓存数据

    // 暂时存储
    [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"isLogin"];
    // 取值
    BOOL isLoginIt = [[NSUserDefaults standardUserDefaults] boolForKey:@"isLogin"];

版权声明:本文为outlan原创文章,未经博主允许不得转载。

UI_Block传值

标签:ui   block传值   代理   协议   

原文地址:http://blog.csdn.net/yadong_zhao/article/details/46915461

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!