首页 > 解决方案 > Swift 闭包中“弱自我”的 Objective-C 等价物是什么?

问题描述

你能告诉我相当于:

var didTapURL: ((_ url: URL) -> Void)?

..........

myObject.didTapURL = { [weak self] (url) in
     self?.manageUrl(url)
}

在Objectice-C中?

标签: iosobjective-cswiftclosuresweak

解决方案


是的__weak,见下文

__weak __typeof(self) weakSelf = self;

// ...

    dispatch_async(dispatch_get_main_queue(), ^{
      [weakSelf call_some_selector];
    });

推荐阅读