@IBAction func inputformula(_ sender: Any) {
guard let formulaText = formulalabel.text else {
return
}
guard let senderedText = sender.titleLabel.text else {
return
}
formulaLabel.text = formulaText + senderedText
}
我无法理解下面文字中的语法。
guard let senderedText = sender.titleLabel.text else
什么是sender.titleLabel
?
如果您有任何有用的网址,请告知我们。
答案 0 :(得分:1)
我真的不知道你想要问什么,但是......
你问的是sender.titleLabel
是什么:我认为你的行动是由一个按钮触发的。如果我在这里你的发件人是你的按钮,那么sender.titleLabel
是发件人的标题(即按钮)
有用的资源可能是:
https://developer.apple.com/documentation/uikit/uibutton https://developer.apple.com/documentation/uikit/uilabel
也许您首先要了解基础知识:
答案 1 :(得分:0)
您的代码无法编译。 sender
为Any
,因此您无法直接访问该媒体资源titleLabel
。你要么写:
guard let senderedText = (sender as? UIButton)?.titleLabel?.text else {
return
}
或更改参数类型:
@IBAction func inputformula(_ sender: UIButton) {
正如您所看到的,我推断sender
是UIButton
,因为UIButton
has a titleLabel
property.希望这是您感到困惑的事情。
guard语句检查按钮的文本是否为零。如果是,则返回,否则继续。