我碰到这个问题几次,而将Objective-C代码移植到Swift。说我有以下代码:
@H_404_1@dispatch_async(dispatch_get_main_queue()) {
self.hostViewController?.view.addSubview(self.commandField)
}
这将导致错误,强调整个dispatch_async调用,提供:
@H_404_1@Could not find member 'addSubview'我假设这是一个尚未正确实现的错误,因为如果我把addSubview调用dispatch_async块外,项目构建正常。最初我认为它可能与在块中捕获自我有关。然而,插入[unowned self]导致相同的错误,[weak self]在(在适当的!解开运算符之后插入)。
如何获得dispatch_async块在Swift工作需要捕获自我?