【发布时间】:2018-08-01 17:05:48
【问题描述】:
我发现这段代码的结果很好奇
@IBOutlet weak var firstButton: UIButton!
@IBOutlet weak var secondButton: UIButton!
func selectButton(_ selectThis: UIButton) {
var deselectThis = (selectThis == firstButton) ? secondButton : firstButton
setButtonSelectionColor(deselectThis, selectIt: false)
}
对 setButtonSelectionColor(deselectThis) 的调用会产生编译错误“可选类型 'UIButton?' 的值?”没有打开;你是不是要使用“!”要么 '?'?”。
我猜这与 firstButton 和 secondButton 的声明方式有关,特别是它们是@IBOutlets(如果它们被定义为弱,仍然有相同的编译错误),但原因让我无法理解。
【问题讨论】: