0

我有一个包含视图的滚动视图。在视图中有 3 个图像视图(屏幕大小)。在任何时候,用户都站在第二个图像视图上。我想让用户缩放这个图像视图。

如何在我的情况下正确实现缩放?

4

2 回答 2

0

请参考本教程,希望对您有所帮助:)

如何使用 uiscrollview-to-scroll-and-zoom-content

于 2012-11-29T04:29:06.623 回答
0

您可以设置滚动视图的最大和最小缩放比例,如下所示。

在第二张图片的第二页上,只需使用 maximumzoomscale 属性设置您的滚动视图...

    CGFloat minScale = MIN(yourScrollView.frame.size.width, yourScrollView.frame.size.height);

   yourScrollView.minimumZoomScale = minScale; 

    yourScrollView.maximumZoomScale = 1.0f; /// set here your zoom scale...
    yourScrollView.zoomScale = minScale;

更新

// Get a zoom scale that's zoomed in slightly, capped at the maximum zoom scale specified by the scroll view
CGFloat newZoomScale = yourScrollView.zoomScale * 1.5f;
newZoomScale = MIN(newZoomScale, yourScrollView.maximumZoomScale);

// Figure out the rect we want to zoom to, then zoom to it
CGSize scrollViewSize = yourScrollView.bounds.size;

CGFloat w = scrollViewSize.width / newZoomScale;
CGFloat h = scrollViewSize.height / newZoomScale;
CGFloat x = yourScrollView.center.x - (w / 2.0f);
CGFloat y = yourScrollView.center.y - (h / 2.0f);

CGRect rectToZoomTo = CGRectMake(x, y, w, h);

[yourScrollView zoomToRect:rectToZoomTo animated:YES];

我希望这可以帮助你...

于 2012-11-29T04:35:00.347 回答