如何调用在按钮的扩展中定义的函数?
How do I call a function that I have defined in an extension on a button?
我已将以下功能写入我的 UIButton 扩展中:
extension UIButton {
func detail(_ font: String, _ fontSize: CGFloat, _ cornerRadius: CGFloat) -> UIButton {
let button = UIButton()
button.titleLabel?.font = UIFont(name: font, size: fontSize)
button.layer.cornerRadius = cornerRadius
return button
}
}
但是,当我尝试在 viewDidLoad() 中调用此函数时,出现以下错误:
override func viewDidLoad() {
super.viewDidLoad()
view.addSubview(theButton)
theButton.detail("Avenir", 50, 12) // ERROR: Result of call to 'detail' is unused
}
我该如何解决这个问题?这是我第一次编码,我知道我错过了一些微不足道的东西!
欢迎使用 Whosebug,出现错误是因为您的函数具有 return 值。将您的代码更改为:
let resultButton = UIButton()
resultButton = theButton.detail("Avenir", 50, 12)
希望对您有所帮助...
我已将以下功能写入我的 UIButton 扩展中:
extension UIButton {
func detail(_ font: String, _ fontSize: CGFloat, _ cornerRadius: CGFloat) -> UIButton {
let button = UIButton()
button.titleLabel?.font = UIFont(name: font, size: fontSize)
button.layer.cornerRadius = cornerRadius
return button
}
}
但是,当我尝试在 viewDidLoad() 中调用此函数时,出现以下错误:
override func viewDidLoad() {
super.viewDidLoad()
view.addSubview(theButton)
theButton.detail("Avenir", 50, 12) // ERROR: Result of call to 'detail' is unused
}
我该如何解决这个问题?这是我第一次编码,我知道我错过了一些微不足道的东西!
欢迎使用 Whosebug,出现错误是因为您的函数具有 return 值。将您的代码更改为:
let resultButton = UIButton()
resultButton = theButton.detail("Avenir", 50, 12)
希望对您有所帮助...