Tag: 滚动查看

如何使用滚动视图缩放到中心?

我们之前实现了点击缩放function,现在我们决定使用图标来放大当前正在显示的内容的中心位置,而且我们希望重复使用我们用于缩放的代码,因为我们希望相同的效果,但是现在我们不知道要通过什么作为中心点。 我们正在使用 (CGRect)zoomRectForScale:(浮点)以Center:(CGPoint)为中心的比例 方法,用来接受来自手势识别器的中心cgpoint,我们用来进行点击缩放; 然而,由于我们不再使用手势识别器,我们将不得不找出通过它的cgpoint。 此外,这种方法适用于水龙头缩放,所以我不认为这是我们遇到问题的地方。 我们试着这样做 centerPoint = [scrollView contentOffset]; centerPoint.x += [scrollView frame].size.width / 2; centerPoint.y += [scrollView frame].size.height / 2; CGRect zoomRect = [self zoomRectForScale:newScale withCenter:centerPoint]; 哪个应该计算当前中心,然后将其传递给zoomRectForScale,但它不起作用(它放大到中心的右侧)。 我认为这个问题可能与我们在应用缩放之前传递图像的中心这一事实有关,也许我们应该通过缩放的中心。 有没有人有这方面的经验,或对我们如何计算中心有任何想法?