我在線上遇到了斯坦福大學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