码迷,mamicode.com
首页 > 移动开发 > 详细

ios Block学习

时间:2014-06-12 17:11:41      阅读:314      评论:0      收藏:0      [点我收藏+]

标签:style   class   blog   code   java   http   

ios block 回调传值,回调事件,

直接上代码

在firstVC里面的tableView 点击方法 ,里面点击跳到另一个nextVC,然后返回后的firstVC后回调值

bubuko.com,布布扣
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
    
    NextViewController *next=[[NextViewController alloc]init];
    __block NextViewController *_next = next;//防止循环引用,这样写
    __weak typeof(self) _self = self;
    next.back=^(int index){
        NSLog(@"--%d",index);//回调的值打印出来
        _next.data=@"asdasdasd";//传a
        NSLog(@"index===%d",index);
        [_self openAlter];
    };
    [self presentViewController:next animated:YES completion:NULL];
}
bubuko.com,布布扣

在nextVC里面定义block,作为一个@property传值

bubuko.com,布布扣
typedef void (^callBack)(int index);
@interface NextViewController : UIViewController
@property (nonatomic,assign)callBack back;
bubuko.com,布布扣

在nextVC的viewDidLoad方法调用这个block:

back(10);

当点击返回,后,值就被回调到firstVC里面的block方法里。

实现完成,block 就是匿名函数,比delegate简单实现了,传值,回调,

学习来自 http://my.oschina.net/leejan97/blog/268536

ios Block学习,布布扣,bubuko.com

ios Block学习

标签:style   class   blog   code   java   http   

原文地址:http://www.cnblogs.com/zhangsongbai/p/3781947.html

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