我试图制作一个我可以捏views
的应用。我使用了两个形状,一个正方形和一个圆形。我也使用了两个ViewControllers
。形状位于FirstViewController
。捏合效果很好,但是当我转到SecondViewController
然后再回到FirstViewController
时,形状会自行改变它们的大小。
我使用的代码:
//Go to SecondViewController
@IBAction func goToSecondVC(_ sender: Any) {
let vc = storyboard?.instantiateViewController(withIdentifier:
"SecondViewController") as! SecondViewController
self.navigationController?.pushViewController(vc, animated: true)
}
//Pinch
func pinchToZoom(targetView: UIView, sender: UIPinchGestureRecognizer) {
let scale = sender.scale
let currentTransform = targetView.transform
targetView.transform = targetView.transform.scaledBy(x: scale, y: scale)
sender.scale = 1
}
@IBAction func squarePinch(_ sender: UIPinchGestureRecognizer) {
pinchToZoom(targetView: squareView, sender: sender)
}
@IBAction func circlePinch(_ sender: UIPinchGestureRecognizer) {
pinchToZoom(targetView: circleView, sender: sender)
}
注意:我使用Main.storyboard
所以我在那里创建了Pinch手势。
我尝试了几乎所有东西,但仍然相同。问题是形状本身正在改变它们的大小,它们应该在我离开时保持不变。
我希望我很清楚,谢谢你的贡献。