博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iOS block的使用
阅读量:6073 次
发布时间:2019-06-20

本文共 516 字,大约阅读时间需要 1 分钟。

前言:

block是iOS开发中时间及参数传递的一种方法,和代理模式(delegate)相比,block是简单易用的轻量级事件传递方法。

初始化:

手打如下代码,或者从代码块把代码拖拽出来。

 

typedef void(^upLoadImage)(NSString *str);//传参类型及形参

 

@property(nonatomic, strong) upLoadImage block;

 

方法的实现

if (self.block) {//先判断

                self.block(file);

            }

使用方法前要先判断方法是否实现,若方法没有实现直接使用的话,会崩溃。

方法的使用

GXuploadImage *load = [[GXuploadImage alloc] init];

    __weak __typeof(self) weakSelf = self;

    load.block = ^(NSString *str) {

 

    };

在block方法里面若使用self的方法和变量的时候,要使用weakSelf,否则会导致循环引用。

 

 

 

转载于:https://www.cnblogs.com/yxl-151217/p/10411580.html

你可能感兴趣的文章
BABOK - 企业分析(Enterprise Analysis)概要
查看>>
Linux 配置vnc,开启linux远程桌面
查看>>
NLog文章系列——如何优化日志性能
查看>>
Hadoop安装测试简单记录
查看>>
CentOS6.4关闭触控板
查看>>
ThreadPoolExecutor线程池运行机制分析-线程复用原理
查看>>
React Native 极光推送填坑(ios)
查看>>
Terratest:一个用于自动化基础设施测试的开源Go库
查看>>
修改Windows远程终端默认端口,让服务器更安全
查看>>
扩展器必须,SAS 2.0未必(SAS挺进中端存储系统之三)
查看>>
Eclipse遇到Initializing Java Tooling解决办法
查看>>
while((ch = getchar()) != '\n')
查看>>
好程序员web前端分享JS检查浏览器类型和版本
查看>>
Oracle DG 逻辑Standby数据同步性能优化
查看>>
exchange 2010 队列删除
查看>>
android实用测试方法之Monkey与MonkeyRunner
查看>>
「翻译」逐步替换Sass
查看>>
H5实现全屏与F11全屏
查看>>
处理excel表的列
查看>>
Excuse me?这个前端面试在搞事!
查看>>