我正在尝试学习 Swift,这让我很困惑:
假设您要添加手势:
faceView.addGestureRecognizer(UIPinchGestureRecognizer(target: faceView, action: "scale:"))
这是缩放函数:
func scale(gesture: UIPinchGestureRecognizer) {
if gesture.state == .Changed {
scale *= gesture.scale
gesture.scale = 1
}
}
为什么刻度末尾有一个冒号(例如 action:"scale:")?是否引用了缩放函数接受 UIPinchGestureRecognizer 类型的参数这一事实?
如果是,那么冒号如何表示该参数?
最佳答案
手势识别器是参数。通过指定冒号,您表示您希望将类型(识别器)作为参数发送,正如您所想的那样。如果省略所述冒号,则需要一个不带识别器作为参数的函数。
关于Swift UIGestureRecognizer 表示法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34642773/