Ios 如何在不放大视图的情况下缩小视图?

Ios 如何在不放大视图的情况下缩小视图?,ios,swift,multi-touch,Ios,Swift,Multi Touch,这就是我目前拥有的: func handlePinching(recognizer : UIPinchGestureRecognizer) { self.layer.transform = CATransform3DMakeAffineTransform(CGAffineTransformScale(self.transform, recognizer.scale, recognizer.scale)); recognizer.scale = 1.0; } 使用self.vie

这就是我目前拥有的:

func handlePinching(recognizer : UIPinchGestureRecognizer) {
    self.layer.transform = CATransform3DMakeAffineTransform(CGAffineTransformScale(self.transform, recognizer.scale, recognizer.scale));
    recognizer.scale = 1.0;
}

使用
self.view.transform
也会使它更大。我想让它“内部”缩放(我真的不知道如何解释)。

所以我不是100%肯定能理解这个问题,但我想我明白了

例如,您希望在不缩放UI的其他元素(导航栏、按钮等)的情况下缩放图像,对吗

因此,我猜在您的示例中,您处于viewController中,这意味着,当您更改
self.view
的比例时,您将缩放所有内容。必须在要放大的特定视图上应用比例

在下面的示例中,要缩放图像,图像位于UIImageView内部,此imageView是
self.view
的子视图。您只需在这个imageView上应用一个变换

此外,考虑到您要缩放的视图是
imageView
您只需执行以下操作,我认为您在如何缩放上会有点困惑

imageView.transform = CGAffineTransformMakeScale(recognizer.scale,recognizer.scale)

我希望这能回答您的问题,如果有不清楚的地方,请告诉我。

我想放大所需的视图,但不使其超过给定的图层大小。因此,我最终只是在滚动视图中添加了视图,滚动视图已经支持缩放