我花了很多时间尝试使用CGAffineScale将视图转换到给定点,包括围绕锚点移动视图中心并在变换前后移动,并进行全面的搜索。我知道使用UIScrollview会简单得多,但我知道也可以在没有它的情况下实现技术上的可能性,这已经成为我的心头肉。
这个答案非常接近我想要实现的效果,但是该答案仅详细说明了如何通过巧妙地将中心移动到所需缩放位置相对的角落来缩放到给定角落(而不是给定点)。
我应该如何修改mvds的代码以使UIView缩放到UIView中的任何给定点?
CGFloat s = 3;
CGAffineTransform tr = CGAffineTransformScale(self.view.transform, s, s);
CGFloat h = self.view.frame.size.height;
CGFloat w = self.view.frame.size.width;
[UIView animateWithDuration:2.5 delay:0 options:0 animations:^{
self.view.transform = tr;
self.view.center = CGPointMake(w-w*s/2,h*s/2);
} completion:^(BOOL finished) {}];