iOS-实现图片的捏合放大与缩小

来源:互联网 发布:相片制作软件下载 编辑:程序博客网 时间:2024/05/16 18:21

第一步  设置代理

[m_zoomScrollView setDelegate:self];


第二步  重写代理方法 

- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView{

    return m_coverImg;

}


第三步 设置放大缩小倍数 

float minScale = CGRectGetWidth(m_zoomScrollView.bounds) / CGRectGetWidth(m_coverImg.frame);

float maxScale = CGRectGetWidth(m_coverImg.frame) / CGRectGetWidth(m_zoomScrollView.bounds);

 

m_zoomScrollView.minimumZoomScale = minScale;

m_zoomScrollView.maximumZoomScale = maxScale;

[m_zoomScrollView setZoomScale:minScale animated:YES];


设置图片始终居中显示: 

- (void)scrollViewDidZoom:(UIScrollView *)scrollView

{

CGFloat offsetX = (m_zoomScrollView.bounds.size.width > m_zoomScrollView.contentSize.width)?

    (m_zoomScrollView.bounds.size.width - m_zoomScrollView.contentSize.width) * 0.5 : 0.0;

    CGFloat offsetY = (m_zoomScrollView.bounds.size.height > m_zoomScrollView.contentSize.height)?

    (m_zoomScrollView.bounds.size.height - m_zoomScrollView.contentSize.height) * 0.5 : 0.0;

    m_coverImg.center = CGPointMake(m_zoomScrollView.contentSize.width * 0.5 + offsetX,

m_zoomScrollView.contentSize.height * 0.5 + offsetY);

}

0 0
原创粉丝点击