方法很简单,遵守UIScrollView的代理方法即可。
需要实现的代理方法为:
/**
返回决定了要缩放的内容(返回内容为scrollView的字控件)
*/
- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView
{
return self.myImageView;
}
该代理方法返回的为当前显示图片的控件,当然也可以是其他控件,比如按钮等。
设定完之后通过手势依然无法实现放大和缩小功能,原因是因为还需要设置两个属性:
self.myScrollview.maximumZoomScale = 5.0;
self.myScrollview.minimumZoomScale = 0.2;
放大或者缩小后的控件,有时候会需要显示在屏幕的某个位置,以屏幕中部为例,需要实现下面的代理方法即可:
- (void)scrollViewDidZoom:(UIScrollView *)scrollView
{
self.myImageView.center = self.view.center;
}