这是我在Objective-C中实现内联回调分配的方式:
self.beforeAdjustViews = ^ (UIView* btnView)
{
// do something
};
如何在Swift 5中实现相同的功能?
答案 0 :(得分:2)
您可以直接分配
self.beforeAdjustViews = { (button) in
// Write Some Code
}
或为此调用创建一个引用变量-通常,当您拥有很多属性或试图使代码简单美观时,
let beforAdjustViewsCallBack: (btnView: UIView) -> Void = { button in
// Write Some Code
}
还请记住,保留周期的规则相同,因此,如果您不想在块内保留self
的强引用,则需要使用{{1} }或[weak self]
(根据您的用例)。
答案 1 :(得分:1)
您可以尝试
self.beforeAdjustViews = { [weak self] (btnView) in
///
}