简简单单教你使用block
来源:互联网 发布:淘宝店铺突然没流量 编辑:程序博客网 时间:2024/05/16 17:11
简介
Block是一个代码块,因其捕获变量、代码传递等特性而使得它比delegate更具功能和灵活性,而被广泛使用。
Block变量的声明、调用
Block变量的声明格式为: 返回值类型(^名称)(参数);1、在类之前定义typedef void (^netRequestResultBlock)(id data, BOOL success);@interface YBNetWorkManager : NSObject@property (nonatomic, copy) netRequestResultBlock resultBlock;@end@implementation YBNetWorkManager- (void)networkRequestFinish { //调用 if (_resultBlock) { _resultBlock(data, YES); }}@end接着你可以在另一个类中实现你想要的操作@implementation ViewController- (void)netRequest { //在另一个类中,为了防止循环引用,此处要用弱引用weakSelf __weak __typeof(self) weakSelf = self; [YBNetWorkManager shareInstance].resultBlock = ^(id data, BOOL success){ weakSelf.nextBtn.userInteractionEnabled = YES; if (success) { NSLog(@"%@", data); } }; [[YBNetWorkManager shareInstance] startRequest];}@end2、在一个方法中定义- (void)test { //如果要更改变量的值,要添加__block标识;如果只是访问,是不需要添加的 __block int j = 0; void(^myBlock)(NSString *, NSUInteger) = ^(NSString *str, NSUInteger i){ j++; NSLog(@"%@, %lu",str, i); }; //调用 myBlock(@"abc", 1);}
阅读全文
0 0
- 简简单单教你使用block
- 简简单单教你制作 闪光字
- 简简单单
- 简简单单
- 简简单单
- 简简单单
- 简简单单
- 简简单单
- 教你爱上Block(闭包)
- iOS-手把手教你如何写block
- 简简单单小方法 帮你防止U盘中毒
- 简简单单的代码让你轻松学会动态代理
- 简简单单的代码让你轻松学会 动态代理
- 简简单单的代码让你轻松学会动态代理
- 简简单单的代码让你轻松学会动态代理
- 简简单单的代码让你轻松学会 动态代理
- 简简单单的代码让你轻松学会动态代理
- 带你玩scikit-learn之简简单单小套路
- adb 常用命令、adb shell 常用命令
- 写hive的udf函数
- leetcode week17
- 总结linux下的线程
- muduo网络库脉络分析(1)
- 简简单单教你使用block
- linux ulimit命令
- selenium之 玩转鼠标键盘操作(ActionChains)
- Android 64K方法数时遇到的问题
- Caffe学习:训练和测试自己的图片
- 剑指offer 二叉树的后续遍历序列
- Git-TortoiseGit完整配置流程
- java提高篇(一)-----理解java的三大特性之封装
- Qt使用Qtextstream进行换行操作