gpt4 book ai didi

ios - 如何在 Swift3 中停止/取消回调?

转载 作者:搜寻专家 更新时间:2023-11-01 06:16:16 24 4
gpt4 key购买 nike

在我的应用程序中,我有一个进行云调用的方法。它有一个完成处理程序。在某些时候,当用户向云发出此调用并在等待完成时,用户可能会点击注销。

这将从堆栈中删除 Controller ,因此完成 block 将返回到不再位于堆栈中的 Controller 。

这会导致崩溃,因为我在完成返回时执行了一些 UI 任务。我做了一个解决方法,我没有对 UI 做任何事情, Controller 不再位于堆栈中。

但是,我很好奇是否可以在注销时以某种方式取消/停止所有挂起的回调?

最佳答案

我不确定,但我认为某些东西是紧密耦合的。尝试做:

{ [weak self] () -> Void in
guard let _ = self else { return }
//rest of your code
}

如果你被取消初始化,那么你的 completioHanlder 将不会继续。

关于ios - 如何在 Swift3 中停止/取消回调?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44335335/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com