我如何创建自己的完成处理程序作为方法参数的一部分

用户名

我想为某个类创建一个完成处理程序,而不是启动该类的主代码并等待委托回调。我已经阅读了Apple文档,但他们似乎并未给出如何直接实现此类示例的很好示例。

克里斯·C

您需要像对待变量一样对待完成块。该方法将接受一个块作为其参数的一部分,然后将其存储以备后用。

- (void)myMethodWithCompletionHandler:(void (^)(id, NSError*))handler;

您可以键入defblock类型以便于阅读:

typedef void (^CompletionBlock)(id, NSError*);

然后将您的块存储为实例变量:

在您的@interface中: CompletionBlock _block;

在myMethod .. _block = [handler copy]

然后,当您希望完成块执行时,只需像常规块一样调用它即可:

_block(myData, error);

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Scala错误处理-如果我的Scala代码的一部分失败,我想将function()作为程序的一部分执行

Gradle:您如何将自己的库作为构建的一部分?

如何腌制自己的一部分

我将如何为作为 cloudant nosql 中数组一部分的元素创建索引?

将 null 作为 vararg 参数的一部分从 Kotlin 传递给 Java 方法

修改参数作为多方法的一部分

如何在PowerShell中将参数作为-file的一部分传递

如何使用函数参数作为变量的一部分?

iTunes Connect:如何创建Bundle ID作为其他团队的一部分?

如何CMD作为java程序,而无需单独启动它的一部分?

我如何迭代从Mongodb返回的arrayList作为结果的一部分?

作为我提交给Slurm的一部分,如何激活特定的Python环境?

如何添加外部头盔作为我的头盔的一部分?

如何仅将我的精灵图像的一部分重复作为div的背景

Django 迁移——作为迁移的一部分,我如何擦除模型?

NodeJS - ES6 - 扩展类错误以返回我自己的类型作为错误响应的一部分

分叉GitHub上存储库的子目录,并将其作为我自己的仓库的一部分

我如何清除状态的一部分

Rails-如何使用变量作为方法名称的一部分

如何确定我的Perl程序是否是Shell逻辑操作的一部分?

如何传递String参数,使其成为类方法调用的一部分?

我应该如何处理这个程序?我用 AND 尝试了第一部分并写了 3 个 if 语句

作为<form>一部分的输入字段破坏了我的ASP.NET应用程序

对于我的API集成测试用例,如何创建带有“ upn” /“ unique_name”(用户的emailId)作为声明一部分的授权令牌

作为JPackage安装的一部分,我如何在linux中使本机linux应用程序可执行

如何更改作为内部 html 一部分的一个元素的引导程序类?

如何传递运行时参数作为依赖关系解决方案的一部分?

如何在接口块内指定模块变量作为伪参数声明的一部分?

生成后如何下载NuGet作为.csproj文件的一部分,以便创建.nupkg文件?