点按两次即可放大PDF UIScrollView?

时间:2012-04-02 20:01:21

标签: objective-c pdf uiscrollview zoom

我的应用程序中有一个“PDF查看器”。我使用CGPDFDocumentRefCGPDFPageRef来显示PDF。要放大PDF,我使用UIScrollView

我已经能够在UIScrollView中进行缩放,但我也希望能够双击缩放。

用一根手指双击将您带到PDF中的不同级别,直到您点击maximumZoomLevel,然后能够用两根手指双击minimumZoomLevel

我无法在互联网上找到特别向您展示的解决方案,所以我在这里问。我怎么能做到这一点?

在viewDidLoad中:

UITapGestureRecognizer *doubleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleDoubleTap:)];
    [doubleTap setNumberOfTapsRequired:2];
    [self.scrollView addGestureRecognizer:doubleTap];
    [doubleTap release];

方法:

- (void)handleDoubleTap:(UIGestureRecognizer *)gestureRecognizer 
{      
    if(self.scrollView.zoomScale > self.scrollView.minimumZoomScale)
        [self.scrollView setZoomScale:self.scrollView.minimumZoomScale animated:YES]; 
    else 
        [self.scrollView setZoomScale:self.scrollView.maximumZoomScale animated:YES];
}

1 个答案:

答案 0 :(得分:0)

我认为您可以在句柄方法中使用UITapGestureRecognizer之后使用numberOfTapsRequired属性(您在alloc / init识别器时指定)并使用– zoomToRect:animated:或{{1在缩放的视图上。

编辑:跟踪当前缩放级别以反转效果。