ios - Swift 闭包中“弱自我”的 Objective-C 等价物是什么?
问题描述
你能告诉我相当于:
var didTapURL: ((_ url: URL) -> Void)?
..........
myObject.didTapURL = { [weak self] (url) in
self?.manageUrl(url)
}
在Objectice-C中?
解决方案
是的__weak
,见下文
__weak __typeof(self) weakSelf = self;
// ...
dispatch_async(dispatch_get_main_queue(), ^{
[weakSelf call_some_selector];
});
推荐阅读
- sql - 合并具有不同列的两个表,没有空值
- javascript - 使用 React-Context 时对象不可迭代错误
- python - 无法在 VSCode 中打开 jupyter notebook
- php - WooCommerce:如何在结帐页面中添加自定义复选标记?
- reactjs - 在 Gatsby NetlifyCMS 项目中从 frontmatter 渲染 markdown/HTML
- assembly - x86 指令是否需要它们自己的编码以及它们的所有参数同时存在于内存中?
- python - AttributeError:“pygame.Rect”对象在进行碰撞时没有属性“rect”错误
- angular - '' 类型的 Babylonjs 参数不可分配给 '' 类型的参数
- javascript - 如何专注于标签,在Angular 8中点击通知?
- ios - 为什么在启动图像中选择“iOS 8.0 及更高版本”并为此新建图像后,iOS 应用程序的屏幕尺寸会发生变化?