在uiscrollview中以编程方式进行缩放时,内容偏移会意外更改

时间:2012-07-04 13:50:16

标签: iphone ios ipad

当我在缩放3.7后缩放时,我的缩放比例为1.0 - 4.0,内容偏移意外地改变为最后一个可见的矩形(右下角)。

如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

根据缩放后的视图大小移动滚动视图的原点。

 - (void)scrollViewDidEndZooming:(UIScrollView *)scrollView withView:(UIView *)view atScale:(float)scale {

     CGFloat vPadding;
     CGFloat hPadding;
     if ((480-view.frame.size.height)/2 > 0) {
          vPadding=(480-view.frame.size.height)/2;
     }
     else{
          vPadding=0;
     }
     if ((320-view.frame.size.width)/2 > 0) {
          hPadding=(320-view.frame.size.width)/2;
     }
     else{
          hPadding=0;
     }
     yourView.frame = CGRectMake(hPadding, vPadding, view.frame.size.width, view.frame.size.height);

}

或相应地更改滚动视图中心。