您需要启用缩放(并设置最小和最大缩放比例),然后实现 scrollViewDidZoom。这是一些示例代码,可帮助您开始处理图像居中。您可以对其进行调整以执行其他部分:
- (void)scrollViewDidZoom:(UIScrollView *)scrollView
{
CGSize boundsSize = scrollView.bounds.size;
CGRect frameToCenter = imageView.frame;
// center horizontally
if (frameToCenter.size.width < boundsSize.width)
frameToCenter.origin.x = (boundsSize.width - frameToCenter.size.width) / 2;
else
frameToCenter.origin.x = 0;
// center vertically
if (frameToCenter.size.height < boundsSize.height)
frameToCenter.origin.y = (boundsSize.height - frameToCenter.size.height) / 2;
else
frameToCenter.origin.y = 0;
imageView.frame = frameToCenter;
}
注意:此代码假定您在 UIScrollView 中保留对 UIImageView(本例中为 imageView)的引用。