我正在学习 2016 年的斯坦福 Swift 课程 iOS9,并且在复制 UIPinchGestureRecognizer 时遇到了问题,对 Selector 代码语法感到非常困惑。
FaceViewConroller.Swift 中的 FaceViewController 类内部:
@IBOutlet weak var faceView: FaceView! {
didSet {
faceView.addGestureRecognizer(UIPinchGestureRecognizer(target: self, action: #selector(changeScale(_:))))
updateUI()
}
}
FaceView.Swift 中 Faceview 的内部类定义:
@objc
func changeScale(_ recognizer: UIPinchGestureRecognizer) {
switch recognizer.state {
case .changed,.ended:
scale *= recognizer.scale
recognizer.scale = 1.0
default:
break
}
}
它构建时没有错误(需要一段时间),但是当它运行捏合手势时会导致错误:
Faceit.FaceViewController changeScale:]: 无法识别的选择器发送到实例
谢谢。