【发布时间】:2016-04-30 14:15:24
【问题描述】:
我什么时候应该在 swift 中使用 UIButton 的 anyObject? 我正在为我的按钮创建一个 IBAction,该按钮将用于执行更多任务,而不是切换到下一个视图。
【问题讨论】:
标签: ios swift uibutton ibaction anyobject
我什么时候应该在 swift 中使用 UIButton 的 anyObject? 我正在为我的按钮创建一个 IBAction,该按钮将用于执行更多任务,而不是切换到下一个视图。
【问题讨论】:
标签: ios swift uibutton ibaction anyobject
最终,真的没关系。
您可以选择使用(sender: AnyObject)的参数,也可以使用(sender: UIButton)。
但是,如果您需要访问UIButton 提供的属性,则有时您可能必须将AnyObject 转换为UIButton。
例如,假设您有并且希望按钮在单击后消失。
func doSomething(sender: AnyObject) {
let button: UIButton = sender as! UIButton
button.hidden = true
}
【讨论】:
对 IBAction 使用抽象 AnyObject 类型的目的对于您有多个应该触发相同操作的 UI 对象的情况可能是有利的。例如,如果您希望按钮和手势识别器共享通用操作的功能。即使使用共享操作,这两个对象也可能有不同的执行路径。
【讨论】: