我在线上遇到了斯坦福大学2016 CS193P课程的一些问题。 我怀疑这个问题可能是因为我使用的是Xcode 8.2.1(所以我不能使用视频中的相同代码),但是我也可能在某个地方做了一个单子。我查阅了文档并查看了堆栈溢出,但我无法解决这个问题。Swift 3中的UIPinchGestureRecognizer
FaceView代表一个卡通人脸,应该随着捏(使用UIPinchGestureRecognizer)一起缩放。要做到这一点的插座内已FaceViewController(在视图控制器为FaceView)创建:
@IBOutlet weak var faceView: FaceView!{
didSet{
faceView.addGestureRecognizer(UIPinchGestureRecognizer(target:faceView, action:#selector(FaceView.changeScale(recognizer:))))
updateUI()
}
}
哪个FaceView类中执行的功能changeScale:
func changeScale(recognizer: UIPinchGestureRecognizer){
switch recognizer.state {
case .changed, .ended:
NSLog("gesture")
scale *= recognizer.scale
recognizer.scale=1.0
let resultString = "pinch - scale = \(scale))"
NSLog(resultString)
default:
break
}
}
我添加了一个输出到控制台查看如果在我们冲击视图时比例发生变化。确实如此(控制台的输出示例:捏 - 比例= 1.10142245024732;捏 - 比例= 1.11638202852033;)
但是视图并没有改变。
我在在这一点上完全看...任何帮助赞赏
我已确认 用户交互设置为True 的IBOutlet中连接(通过控制台输出确认)
不幸的是CGAffineTransformIdentity在Swift中不可用 – stevenpcurtis