首页 > 代码库 > ios Block学习
ios Block学习
ios block 回调传值,回调事件,
直接上代码
在firstVC里面的tableView 点击方法 ,里面点击跳到另一个nextVC,然后返回后的firstVC后回调值
-(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]; }
在nextVC里面定义block,作为一个@property传值
typedef void (^callBack)(int index); @interface NextViewController : UIViewController @property (nonatomic,assign)callBack back;
在nextVC的viewDidLoad方法调用这个block:
back(10);
当点击返回,后,值就被回调到firstVC里面的block方法里。
实现完成,block 就是匿名函数,比delegate简单实现了,传值,回调,
学习来自 http://my.oschina.net/leejan97/blog/268536
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。