我有一个带有图像的 UIScrollView,并且该图像位于容器 View 中。 View 层次结构如下所示:
UIScrollView
UIView
UIImageView
平移效果很好,但是当我使用捏合手势进行缩放时,图像会改变大小,但不会相对于原点移动,因此两根手指下方的中心点会随着手势的进行而移动。这使得放大特定点变得非常困难,因为当您缩放时它会滑开。
涉及观点说明:
<MyApp.MyView: 0x7ff6fd827e00; baseClass = UIScrollView; frame = (0 0; 375 667); autoresize = W+H; gestureRecognizers = <NSArray: 0x61800004a4d0>; layer = <CALayer: 0x618000023420>; contentOffset: {684, 487.5}; contentSize: {1731.4584832023011, 1154.3056554682007}>
<UIView: 0x7ff6fbe0c4d0; frame = (0 0; 1728 1152); transform = [2.2028669620902912, 0, 0, 2.2028669620902912, 0, 0]; layer = <CALayer: 0x6180000234c0>>
<UIImageView: 0x7ff6fbe09cd0; frame = (0 0; 1728 1152); opaque = NO; userInteractionEnabled = NO; layer = <CALayer: 0x618000023340>>
我在 UIView 包装器内有 UIImageView,因为我将在图像上叠加其他 View ,这些 View 需要随图像一起缩放/缩放。
缩放期间我自己的代码运行得很少。 UIScrollViewDelegate返回UIView(UIImageView的父级),并配置 ScrollView :
minimumZoomScale = 0.2
maximumZoomScale = 3.0
contentSize = image.size
最佳答案
好吧,我已经制作了一个使用您的 View 结构的简单项目。我没有面对这些问题。可能,您应该检查以下事项:
UIImageView
模式适合您的需求希望这可能对您有所帮助
关于ios - UIScrollView 缩放到错误的点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39307638/