私は、CGAffineScale を使用してビューを特定のポイントに変換する方法を見つけるために多くの時間を費やしました。これには、アンカー ポイントをいじったり、変換の前後にビューの中心を移動したり、包括的なグーグルが含まれます。UIScrollview を使用すると、これがはるかに簡単になることは承知しています。しかし、技術的にはなくても可能であることはわかっています。
この答えは私が達成したいものに非常に近いですが、答えは、ズームインしたいコーナーの反対側のコーナーに中心を巧みに移動することにより、(特定のポイントではなく) 特定のコーナーにズームする方法の詳細のみを提供します.
UIView の任意のポイントに UIView をスケーリングするためにmvdsのコードを変更するにはどうすればよいですか?
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) {}];