我正在尝试使用@IBAction将按钮单击事件绑定到Swift方法。在Objective-C中,IBAction的参数类型是id。什么是Swift中的id等价物?
答案 0 :(得分:85)
Any
,如果您知道发件人永远不会nil
。
@IBAction func buttonClicked(sender : Any) {
println("Button was clicked", sender)
}
Any?
,如果发件人可能是nil
。
@IBAction func buttonClicked(sender : Any?) {
println("Button was clicked", sender)
}
AnyObject
,如果您知道发件人永远不会nil
。
@IBAction func buttonClicked(sender : AnyObject) {
println("Button was clicked", sender)
}
AnyObject?
,如果发件人可能是nil
。
@IBAction func buttonClicked(sender : AnyObject?) {
println("Button was clicked", sender)
}
答案 1 :(得分:0)
AnyObject
其他映射类型,
将某些Objective-C核心类型重新映射到Swift中的替代品, 比如NSString to String
将某些Objective-C概念重新映射到Swift中的匹配概念,例如 指向期权的指针