如何在不使视图变大的情况下捏缩放视图?

时间:2016-01-07 14:38:59

标签: ios swift multi-touch

这就是我目前所拥有的:

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

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

1 个答案:

答案 0 :(得分:2)

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

例如,您想放大图像而不缩放UI的其他元素(NavBar,Buttons,...)吗?

所以我想你就是这样的例子,你在viewController中,这意味着,当你改变self.view的比例时,你会缩放一切。您必须在要放大的特定视图上应用比例。

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

此外,我认为你对如何缩放有点困惑,考虑到你想要缩放的视图是imageView你只需要做

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

我希望这能回答你的问题,如果有什么不清楚,请告诉我。