Swift UIGestureRecognizer 表示法
Swift UIGestureRecognizer Notation
我正在努力学习 Swift,这让我很困惑:
假设您要添加手势:
faceView.addGestureRecognizer(UIPinchGestureRecognizer(target: faceView, action: "scale:"))
这是比例函数:
func scale(gesture: UIPinchGestureRecognizer) {
if gesture.state == .Changed {
scale *= gesture.scale
gesture.scale = 1
}
}
为什么刻度末尾有一个冒号(例如 action:"scale:")?是否引用了 scale 函数接受 UIPinchGestureRecognizer 类型参数的事实?
如果是,那么冒号如何表示该参数?
手势识别器是参数。通过指定一个冒号,您表示您希望将类型(识别器)作为参数发送,正如您所想的那样。如果省略所述冒号,则需要有一个没有识别器作为参数的函数。
我正在努力学习 Swift,这让我很困惑:
假设您要添加手势:
faceView.addGestureRecognizer(UIPinchGestureRecognizer(target: faceView, action: "scale:"))
这是比例函数:
func scale(gesture: UIPinchGestureRecognizer) {
if gesture.state == .Changed {
scale *= gesture.scale
gesture.scale = 1
}
}
为什么刻度末尾有一个冒号(例如 action:"scale:")?是否引用了 scale 函数接受 UIPinchGestureRecognizer 类型参数的事实?
如果是,那么冒号如何表示该参数?
手势识别器是参数。通过指定一个冒号,您表示您希望将类型(识别器)作为参数发送,正如您所想的那样。如果省略所述冒号,则需要有一个没有识别器作为参数的函数。