gpt4 book ai didi

swift - 以编程方式创建 UIButton 事件时,@objc 和 IBAction 之间有什么区别吗?

转载 作者:搜寻专家 更新时间:2023-10-31 22:10:06 25 4
gpt4 key购买 nike

当从 Storyboard 中的 UIButton 创建事件处理程序时,Swift 在 func 之前添加了 @IBAction。当以编程方式将事件添加到 UIButtonfunc 时,Swift 报错并说我需要在我的方法前面添加 @objc ,但是当我添加 @IBAction 时,它也会编译。

将事件添加到我的 UIButton 以编程方式 时,两者之间有区别吗?我应该使用哪个?

最佳答案

IBAction 前缀已经将方法公开给 Objective-C 运行时,因此无需再为它添加前缀 @objc

由于 IB 代表 Interface Builder,因此在以编程方式创建按钮时没有必要使用它。它所做的一切(除了将方法暴露给 Objective-C 之外)是让 Interface Builder 将函数列为连接检查器中的一个 Action 。

关于swift - 以编程方式创建 UIButton 事件时,@objc 和 IBAction 之间有什么区别吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49210002/

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