iOS 15 UIButton 配置 - 如何为配置处理程序编写闭包
iOS 15 UIButton configuration - how to write a closure for configuration handler
按照教程,我正在使用新的 UIButtons 和 iOS 15.
let btn = UIButton(frame:CGRect(x: 25, y:0 , width: 250, height: 50))
btn.config.title = "Connect"
btn.updateConfiguration()
btn.configurationUpdateHandler = { button in
var config = btn.configuration
switch button.state {
case .highlighted:
config?.showsActivityIndicator = true
config?.imagePadding = 5
self.role = self.nameInput.text?.lowercased()
UserDefaults.standard.set(self.role, forKey: "role")
SFSConn.shared.connect()
default:
config?.showsActivityIndicator = false
}
btn.configuration = config
}
btnForm.addSubview(btn)
如何将闭包外推为独立闭包?
我想将多个按钮连接到同一个闭包。
提前致谢。
configurationUpdateHandler
属性 是 UIButton.ConfigurationUpdateHandler?
类型,它只是 (UIButton) -> Void
的类型别名,它是一个接受单个参数 [=14] 的闭包=].所以就创建它吧。
let handler: (UIButton) -> Void = { (button) in
// do something
}
btn.configurationUpdateHandler = handler
按照教程,我正在使用新的 UIButtons 和 iOS 15.
let btn = UIButton(frame:CGRect(x: 25, y:0 , width: 250, height: 50))
btn.config.title = "Connect"
btn.updateConfiguration()
btn.configurationUpdateHandler = { button in
var config = btn.configuration
switch button.state {
case .highlighted:
config?.showsActivityIndicator = true
config?.imagePadding = 5
self.role = self.nameInput.text?.lowercased()
UserDefaults.standard.set(self.role, forKey: "role")
SFSConn.shared.connect()
default:
config?.showsActivityIndicator = false
}
btn.configuration = config
}
btnForm.addSubview(btn)
如何将闭包外推为独立闭包? 我想将多个按钮连接到同一个闭包。 提前致谢。
configurationUpdateHandler
属性 是 UIButton.ConfigurationUpdateHandler?
类型,它只是 (UIButton) -> Void
的类型别名,它是一个接受单个参数 [=14] 的闭包=].所以就创建它吧。
let handler: (UIButton) -> Void = { (button) in
// do something
}
btn.configurationUpdateHandler = handler